我制作了一个进度表,1-30 名用户将在一天中不断更新。它由 PHP 和 jQuery 控制,所有数据都存储在 mySql 数据库中。
在实时服务器上很慢,因为我重新查询搜索和过滤器。我想知道在哪里存储结果最好,因为我只需要最新的更新,而不需要不断地过滤和更新。
是否可以在 session 中存储此类数据,或者我还可以将其存储在谁中以避免在每次更改/搜索或页面更改时进行完整查询?
最佳答案
我确实研究了 memcached,但我最终重新设计了它。
我使用 jQuery 在匹配的数据属性上使用 hide() 和 show() 来过滤记录,而不是使用“LIKE '%Darren%'”SQL 查询。 这会将负载放在与我的服务器相对的用户终端上(尽量将动画保持在最低限度,以保持较低的内存使用率)。
然后我在 HTML 中存储用户终端上最后一次更新的时间戳,然后运行 “SELECT id FROW progress WHERE updated > '2014-02-20 16:54:30' LIMIT 1”定期查询。 如果我得到 1 条记录,我将使用 Ajax 进行完整更新并使用新的 HTML 刷新所需的区域。
这样做使它变得更快、更顺畅。
我知道这有什么帮助,如果您需要更多信息,请告诉我!
关于PHP jQuery MySQL 即时刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18236549/