客户端的mod_perl服务器事件

时间:2011-01-21 14:29:08

标签: web-services perl apache soap mod-perl

使用Web服务实现服务器到客户端回调(事件)的好方法是什么?

我们已经有一个在Apache上运行的mod_perl公开的基于SOAP的API,但它是服务器的单向客户端。我们需要通知其他客户端服务器上的某些更改。

使这项工作的好方法是什么? perl的可用模块?

我们想到的一件事是制作一个长时间运行的Web请求,最终会在事件发生时做出响应,但如果连接了许多客户端,这似乎会保持太多的mod_perl进程在运行。

2 个答案:

答案 0 :(得分:3)

一种方式是你提到的,长期运行的民意调查。

另一个是websockets。有许多Perl框架能够处理websockets请求,其中一个是Mojolicious

有关示例,请参阅Mojolicious::Lite#WebSockets处的文档。

我建议在你的情况下运行websockets webapp与mod_perl服务器分开,并且“只是”使用Apache来反向代理mojolicious应用程序。

答案 1 :(得分:0)

你真的尝试过第一种方法吗?这将是多少个最大并发客户端? apache应该可以管理几十个。只是猜测。

您是否尝试过这种低技术方法"Watching long processes through CGI",或者它是您想要首先摆脱的?