2012-10-01 22 views
0

Zend_Log作家将数据发送到第三方资源,像亚马逊DynamoDB,例如。这样的操作需要时间,我想在后台执行。我试图使用pcntl_fork(),但它无法正确使用Apache。关于如何在PHP和Zend Framework中执行日志操作的并行执行,您还有其他想法吗?也许有些例子?Zend_Log在后台 - 可能吗?

编辑:据我所知,一个显而易见的解决方案是保存日志信息到一些文件/队列,并通过后推他们,但是这不是我要找的这个问题。

+1

把它在一些地方排队,有时在平面文件发送物品亚马逊 – zerkms

+0

储存基本信息,并继续与正常的过程。安排一个cronjob(每X分钟,根据你的日志队列)将处理使用亚马逊的服务这些日志并清除处理日志。每个cronjob将作为一个独立的进程运行。 – emaillenin

+0

..你在找什么? PHP是单线程的,分叉仍然需要某种形式的队列来处理或IPC(即平面文件或共享内存)。 –

回答

0

正确的解决这个问题是依靠syslogZend_Log_Writer_Syslog。 Syslog将日志客户端与实际日志写入者(到任何第三方资源)分离。作家到亚马逊必须配置为系统日志服务器端配置的一部分。