我想运行一个PHP脚本,每秒运行一次以更新MySQL表。PHP可以同时或一个一个地处理多个请求吗?
假设该脚本需要0.99秒,这将阻止网站访问者在脚本执行时访问网站吗?他们会收到超时/内部服务器错误? 如果是这样,有没有办法解决这个问题,或许使用某种多线程选项?
为了给出更多的细节,我试图创建一个角色扮演游戏,其中有怪物。这些怪物存储在一个名为rpg_monsters的表中。怪物表有一个ID,目标,x和y场,并且需要看他们是否在对方的范围内攻击可能的敌方。 如果他们在彼此的范围内,他们需要将他们的目标更新为该怪物ID。今天我仍然有很少的怪物,但是这个数字将来会增加,从而增加剧本的执行时间。
我知道在正常情况下,您需要专门的服务器来完成这种紧张的工作。但是,我想看看在变得过载之前我能推多少PHP/MySQL。
预先感谢您!
简答题;没有。多个用户可以一次访问脚本/页面。想象一下,有多少人在Facebook上加载相同的文件。 – OptimusCrime
永远不要做这样的假设:D(0,99秒的跑步) – dynamic
我建议你使用AJAX来填补这个目的。例如,您可以每秒更新一次AJAX调用PHP文件来更新MySQL表,然后让它检查最后更新的字段,以便如果多个用户发送AJAX请求,则每1秒只允许更新一次。无论是或者您可以使用Cron选项卡或计划任务,他们在那里独立于客户端请求执行这些操作。漫漫漫步漫步...... – ShadowScripter