【发布时间】:2011-06-08 17:22:26
【问题描述】:
目前,我有一个网站,人们可以在某支球队的曲棍球比赛期间打开该网站。当曲棍球队得分时,指定人员点击安全位置的按钮。这将使用当前时间戳更新 MySQL 数据库中的单个条目。
在网站的前端,每 15 秒对 PHP 脚本进行一次异步调用,以查询数据库中的时间戳。然后脚本将当前时间与拉取的时间戳进行比较,如果它在当前时间戳的 15 秒内,它会在网页上触发一个事件,包括播放气喇叭的声音和播放球队目标歌曲的短片。
在球队比赛期间,我通常会获得大量的视线,但是很多人抱怨在进球后(最多)延迟 15 秒才能触发声音。我想找到一种方法来解决这个问题。
显然,我不认为为页面上的每个用户(想想 100 多个)每秒查询数据库会起作用;我可能会杀死我的数据库。那么,有没有其他方法可以实现我的结果?是否可以将 PHP 变量放入服务器的内存中,每个会话都可以提取该变量而不会产生使用数据库或文件系统读取的负面后果?
编辑:我的主机没有memcached 可供我使用,我无法安装它。这令人失望,因为这听起来像是最佳解决方案。有没有人可以考虑不使用memcached的替代想法?
【问题讨论】: