我正在构建一个webapp。 HTML + AJAX< - > PHP< - > MySQL的;非常传统。我需要做的是拥有一个所有会话都可以读取的状态,以及即使没有用户查看该站点也会驱动状态更改的内容。
一个简单的例子就是一个计数器。我们启动计数器从零开始运行,然后每当有任何用户连接到网站时,他们都会看到计数器的当前值。即使没有人在看网站,柜台仍然会增加。每个看网站的人都会同时看到相同的价值。
实施此方法的最佳方法是什么?看起来我应该能够做到这一点,而不需要在数据库中存储值并让每个人都在查询数据库的状态。但我不知道如何在没有人连接的情况下运行PHP。我需要第四个组件吗?我没有自己的网络服务器,这些东西都存放在为我设置环境的现成的一些现成的地方,但它们似乎拥有在这种堆栈中所期望的最新和合理的东西。
显然,这不是我的专业领域,所以对正确方向的任何推动都表示赞赏。
答案 0 :(得分:1)
您可以设置一个全局PHP变量,如果您的Web主机允许它在您的控制面板中设置一个cron作业,在您的应用程序中运行php脚本,每隔一定的分钟数增加该变量。
http://en.wikipedia.org/wiki/Cron
通常,Web主机的控制面板中会有一个cron scheduler应用程序,可让您选择要运行的脚本以及在什么时间间隔运行。
答案 1 :(得分:1)
你能解释一下你想在后台做什么吗?无论如何,听起来你会想要设置一个cron任务来执行基于控制台的php脚本来执行这个附加功能。您可以根据需要随时安排执行cron任务。设置cron任务可以从任何有价值的控制面板(cPanel,Plesk,Exim等)完成。
只要将这些信息实际保存在主要前端PHP代码中的所有会话中,您就可以将信息存储在缓存中(使用Memcache)
答案 2 :(得分:1)
是什么让柜台增加?
你可以使用cron作业。
要使状态持久保存在所有连接上,它将需要存储在数据库中或存储为文件(无论如何都是数据库)。