Php 运行相同轮询脚本的多个页面

Php 运行相同轮询脚本的多个页面,php,jquery,database,polling,Php,Jquery,Database,Polling,我的头中有一个jQuery脚本,它每60秒更新一次last_active datetime数据库字段。问题是,如果用户打开了多个窗口,那么当每个页面在60秒后更新时,这会给服务器带来额外的压力 我宁愿解决这个问题而不必求助于框架。。。如果可能的话 有没有办法解决这个问题?您可以在PHP逻辑中检查哪些IP请求来自哪个IP,并设置一个条件,如果在过去60秒内没有更新,则只从该IP执行更新。您可以按照Will的建议执行,但上述情况中的问题是,并非所有用户都使用公共ip浏览互联网。在这种情况下,您可以尝

我的头中有一个jQuery脚本,它每60秒更新一次last_active datetime数据库字段。问题是,如果用户打开了多个窗口,那么当每个页面在60秒后更新时,这会给服务器带来额外的压力

我宁愿解决这个问题而不必求助于框架。。。如果可能的话


有没有办法解决这个问题?

您可以在PHP逻辑中检查哪些IP请求来自哪个IP,并设置一个条件,如果在过去60秒内没有更新,则只从该IP执行更新。

您可以按照Will的建议执行,但上述情况中的问题是,并非所有用户都使用公共ip浏览互联网。在这种情况下,您可以尝试使用IP检查浏览器版本和会话ID。然后,您甚至可以使用单个IP和多台浏览机器为ISP/网吧背后的用户提供不同的统计数据

你为什么要保留这样一块地?是否可以在收到请求时只保留“上次访问”时间,并将其用于您的目的,而不是您正在做的事情?

谢谢各位的建议。。。老实说,这是一个非常简单的SQL查询。只需使用当前日期时间更新数据库。记录IP和计算自上次查询以来的时间似乎需要更多的工作。我希望通过javascript在客户端实现一些东西,可以检测页面实例的数量,并且只在其中一个实例上运行更新脚本……我正在构建一个网站,跟踪用户在任何给定时间在线的内容。如果页面仍处于打开状态(即,它们仍处于联机状态),脚本将每60秒更新一次数据库。我想我可以将上次更新时间存储在用户会话中,而不是数据库中,并在客户端确定是否需要更新:)当用户登录时,您可以在服务器上存储“上次访问”的时间,该时间将过期。每次请求时,您都会更新此字段。每当您计算用户数时,只需运行此表,找到尚未过期的用户并打印它们。那不行吗?