+ -
当前位置:首页 → 问答吧 → PHP并发问题

PHP并发问题

时间:2011-08-06

来源:互联网



一个发送短信的应用。send.php该文件每次执行会去数据库取出所有发送状态为【未发送】的短信,然后循环发送。每条短信发送成功后,会更新该条短信发送状态为【已发送】。

问题是:
send.php可能会被多次访问,这就有可能造成一条短信被多个send.php读取,多次发送,用户就有可能收到多条短信。

如何保证只允许一个send.php实例在服务端运行呢?
写在后面的话:PHP每次运行重建环境,这样的运行方式本身就决定了PHP没有传统意义上的单例,PHP的单例只会在该次请求中起作用。

作者: faiinlove   发布时间: 2011-08-06

用个队列,要么用个定时器。

作者: lujun_880726   发布时间: 2011-08-08

方法楼上的已经说了

最近搞得一个短信用的是定时器触发,短信接口端做了列队

作者: idesigner   发布时间: 2011-08-08