我正在运行一个应用程序,该应用程序在交通繁忙时需要大量选择计数,我想限制这一点,我确定有一种技术可以在临时变量上记录选择查询结果,无需访问数据库即可获取它,并更新它每 x 秒设置一次值,这肯定会减少整体加载时间。
这是函数调用: return $this->getOnlineNow($user_code); 每次访问者查看我的应用程序小部件时都会调用该行,您可以想象数据库在大流量下的巨大压力。
您可以尝试缓存从 select 语句中获得的数据。
但是,如果您尝试像您所说的那样频繁更新该数据,这将无济于事:
临时变量上的选择查询结果在不访问数据库的情况下获取它,并每 x 秒更新一次该值
您需要首先确保,您在此时间间隔内调用数据库的次数少于当前访问的次数。要在 x 秒间隔后更新临时表意味着您需要每 x 秒连接一次数据库,这增加了目前访问数据库的开销。这可能会使事情变得更糟,就像现在一样。
你可以在这里找到一些关于缓存的基础知识/快速入门,谷歌可能会帮助你。