如何在apache/mod_perl页面呈现期间推迟处理?

aid*_*dan 5 apache perl cron mod-perl

我有一个apache2/mod_perl网站.在一个页面上,我需要通过SOAP进行一些服务器/服务器通信.

对于页面的呈现,不需要该通信的结果(但是需要用户输入来触发该通信).

SOAP通信非常慢.

所以我想要做的是为用户处理和打印页面,然后在幕后完成所有SOAP的工作.

实现这一目标的最佳方法是什么?开始一些叉?把工作写到一个文件,并让一个cronjob拿起它?

谢谢

Ya.*_*man 7

有两种类型的解决方案:首先,你可以做Randal Schwartz 在这里提出的建议.其次,您可以使用像BeanstalkGearman这样的消息队列.Beanstalk有一个Perl客户端,现在是持久性的,非常适合轻量级的东西.另一方面,Gearman拥有更多功能,更多功能.还有TheSchwartz - 如果没有太多文档就可以使用它.cron是系统重复任务的理想选择.对于您的应用程序类型,如果您更喜欢更通用的"消息队列" ,则可能更适合使用Schedule :: At

另请参阅此处的旧StackOverflow线程