我正在使用zend创建一个Web应用程序,在这里我创建了一个接口,用户A可以从该接口向多个用户发送电子邮件,并且效果很好,但是由于用户A等待太多,这会降低执行时间“已确认的回复”(将在电子邮件发送后显示。)
在Java中,我们可以通过“线程”执行该任务(发送电子邮件),并且不会减慢其余应用程序的速度。
与Java一样,PHP / Zend中是否有任何技术可以用来划分我们的任务,这可能会花费很多时间,例如:发送电子邮件。
编辑(感谢@Efazati,这个方向似乎有了新的发展)
http://php.net/manual/en/book.pthreads.php 注意:(从这里底部):
pthreads曾经是并且现在是一个效果很好的实验。它的任何限制或功能可能随时更改;[…]
/编辑
PHP中没有线程!
该 解决方法 是存储作业在队列(说行与电子邮件的表),并有一个cronjob打电话给你的PHP脚本在给定的时间间隔(比如2分钟),轮询工作。当作业存在时,获取一些作业(取决于您的php的安装超时时间)并发送电子邮件。
推迟执行的主要思想是:
陷阱: