使用PHP将转发的URL参数保存到MySQL数据库
我有一个客户发送批量短信的网站,因此我将短信请求转发给聚合器,他通过印度的移动操作符发送消息.
现在,我面临的问题是.一旦发送了SMS,为了获得实时传送报告,我需要使用PHP中的脚本从聚合器接收参数.所以我做了一个脚本,例如example.com/dlr.php和脚本包含 <?php include('config.php'); $uid = sanitize($_GET['uniqueid']); $status = sanitize($_GET['status']); $cause = sanitize($_GET['cause']); if($uid != "" || $status != "" || $cause != "" ){ $sql = "INSERT INTO `table` ....."; //execute code... } 所以使用它,我将数据存储在我的数据库中并间隔更新记录. 当聚合器向我的URL发送同步请求时,我的专用服务器崩溃example.com/dlr.php?uniqueid=1234332423u0026amp;status=successu0026amp;cause=deliveredu0026amp;time=12312432423,因此所述URL一次多次出现,有时数千次,当我的客户以100,000个号码发送消息时,所有100,000个号码的发送报告都会转发到我的脚本. 可能是由于这个原因,我的服务器崩溃并变得无法访问. 处理此脚本的并发连接并将值存储到MySQL数据库的最佳方法是什么? 感谢您的帮助,谢谢 解决方法
问题可能在于您的数据库 – 而不是脚本本身.我会检查你允许的最大连接数…默认情况下,这个数字设置为100.最大连接数是4,294,967,295
请查看此链接以获取有关如何更改它的信息:MySQL Connection Limit 此外,您可以在崩溃之前,期间和之后发布您的服务器的一些日志吗?这样我们就能更好地了解发生的事情以及为什么…… 更好的方法是错开数据导入.即;将收据写入临时文本文件 – 然后使用cron作业 – 每隔X分钟;读取临时文本文件并将第一批数据导入数据库. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |