我有一个简单的要求,即在呈现视图并将其发送回用户后执行某些代码。
用户不需要收到处理结果的通知,我不想在处理与他们无关的内容时阻止用户,即使它只需要几秒钟的时间。< / p>
我知道有些繁重的工作我应该使用齿轮机或类似的东西,但目前只需要快速简单的东西。
理想情况下,我仍然需要访问zend_registry和已执行操作中创建的其他数据。
我在考虑插件并捕获routeShutdown()但这似乎已经远远没有了......
有什么想法...
感谢。
答案 0 :(得分:4)
在这种情况下,我通常会创建一个队列 - 可能存储在db表中 - 然后运行cron进程来使用队列。队列包含我需要进行后请求处理的数据 - 或至少指向数据的指针。
注意:实际的HTTP请求对象和所有特定于请求的数据(例如存储在Zend_Registry中的任何内容)消失,不直接可以通过cron进程访问。如果您需要任何每个请求数据来进行请求后处理,请确保将该数据存储在工作队列或其他一些持久性位置。