我在PHP`(5.2)的贝宝IPN处理程序,处理事务和存储日期在MySQL数据库中。该网站的活动较少。
偶尔MySQL查询失败。 (很少)我记录了一切,如果PayPal消息未能得到处理,我可以查看我的日志文件并重新发送PayPal消息。
思想/关注
但我想知道如果我可以做的过程有点更强大,而不是有放弃之前的处理器重新尝试MySQL查询。
我可能想等一下 - 不要立即敲击多个查询尝试。
我希望能找到一些模式 - 寻找像“php mysql query retry”这样的东西,但没有太多的成功。
问题
是否有良好的实践指南为这个?
现有库?
是一个简单的循环和
sleep
之间每个查询尝试好,或可以有不良副作用?太原生了吗?
为什么不在查询后检查错误,如果为真则重试?另一种方法只是将这个查询标记为“已撤消”,然后cron作业将使所有“未被采纳”的数据运行并每隔几分钟重新执行一次。 – stasgrin
所以你说在失败的查询后立即重试? – thomthom
至于cron作业 - 我会创建一种方法来恢复剩余事务的处理。这不仅仅是一个单一的查询 - 而是来自前一个数据的多个集合和一些回复。 – thomthom