2010-04-26 37 views
0

我有一个Python驱动的web界面,它由Apache 2.2提供,并带有mod_python和Python 2.4。我需要使异步过程与此Web界面的用户同步显示。使异步界面与mod_python用户同步显示

当用户这个网站上访问一个模块:

  1. 外部SOAP接口将与唯一标识符接触,并且将与一些Ñ
  2. 外部接口将异步通过接触响应响应我的机器上的SOAP服务器在1到10次之间(数字N告诉我们将收到多少响应)

我需要以某种方式聚集这些响应,并将它们传递给将显示信息返回给用户的原始模块。目标是使该过程对用户显示同步。

处理此同步问题的最佳方法是什么?这是什么Twisted将非常适合?

我并没有将自己限制在Python的解决方案中,尽管它是首选的,因为服务器上的其他所有东西都是Python。我更喜欢可伸缩的解决方案,并且只需要很少的编程时间(尽管我明白这些属性有些不一致)。

回答

2

也许你可以使用Orbited通过长时间的HTTP连接获取ajax push给你的web客户端。轨道是基于Twisted的,所以我认为看看你是否已经知道Twisted是有道理的。看看这tutorial开始。

+0

不幸的是,访问mod_python模块的接口不能从Web浏览器访问,而是从另一个Web接口访问,所以JavaScript解决方案将无法工作。 我其实并不知道Twisted在几年前曾经非常简单地玩过它,但是如果它能帮助我找到一个简单的解决方案,我愿意学习它。 – 2010-04-26 23:11:09

+0

所以,如果它不是基于网络的话,我认为它更容易一点。你可以编写一个扭曲的服务器,它接受来自客户端的连接,连接SOAP接口并轮询响应的状态(我假设它们存储在数据库的某个地方)。如果您收到所有回复,请将答案写回到打开的客户端连接并退出。如果客户端协议是HTTP,你也可以看看http://www.tornadoweb.org/ – 2010-04-28 10:15:16