2010-10-25 88 views
1

编辑:问题更新。谢谢Slott。实现与TCP服务器交互的基于Web的客户端

我有一个Python的TCP服务器。

这是一个具有异步行为的服务器。 。

消息格式是二进制数据。

目前我有一个与代码交互的python客户端。

我希望能够最终实现一个基于Web的前端到这个客户端。

我只是想知道,这样的应用程序应该是正确的设计。

回答

1

从任何基于WSGI的Web服务器开始。 werkzeug是一个选择。

异步TCP/IP是一个非常复杂的问题。 HTTP是同步的。因此使用展示一些异步数据的同步Web服务器始终是一个问题。总是。

您可以做的最好的事情是缓冲事物并在您的Web应用程序中有两个进程。

  1. 从删除服务器收集数据并将其缓存到某个文件(或多个文件)中的TCP/IP进程。

  2. 处理GET/POST处理的WSGI Web进程。

    • GET请求将获取部分或全部缓冲区并显示它。

    • POST请求将向TCP/IP服务器发送消息。

+0

正是这就是我在想什么,使用TCP/IP并返回显示结果,但也有一些异步元素到这个应用程序。我想知道如何在客户端实现这一点,如在Javascript <-> python交互 – anijhaw 2010-10-25 19:26:09

+0

东西就像一个python服务器异步调用JavaScript。 – anijhaw 2010-10-25 19:26:54

+0

@anijhaw:**更新**您的问题包含**所有**的相关信息。你的问题说“带请求 - 回复行为的简单服务器”。你的评论说“一些异步元素”。请选择其中一个并坚持下去。请不要随意添加新的要求。请不要在评论中添加要求。请**更新**您的问题是完整和一致的。 – 2010-10-25 19:29:11

0

对于基于Web的聊天HTTP。使用JSON或XML作为数据格式。

符合标准,并利用了大量的图书馆。不要重新发明轮子。这样你从长远来看就没有什么头痛了。

0

,如果你需要维持多个HTTP请求到后端服务器的连接,Twisted的HTTP服务器是一个理想的选择,因为它的建成能够轻松管理多个连接。