0

我很抱歉标题可能对内容没有意义。

我创建了一个代码,其中一个查询加载到 db 并选择一些行,然后它创建一个循环并将其放入一个数组中。

SELECT----      
for($i=0;$i<$count;$i++){
            $info[] = mysql_fetch_assoc($result);

所以这个查询非常简单快捷。

现在,当访问者进入网络中的某个站点时,这些查询正在完成。这一切都很好,但我从不想相信我的访客。如果他们多次更新页面(使用多个浏览器、机器人等),那么我每秒的查询量会增加很多。这可能会导致崩溃!或者可以吗?

所以我想知道的是,我怎样才能获得内容,但仍然不让用户将页面更新为每秒多次。Cookies 检查最后一个数据库连接?对我有什么想法吗?有什么建议吗?

4

1 回答 1

1

它通常以这种方式工作:

  define('THIRTY_SECONDS', 30);

  if (current_request_cache_time_in_seconds() < THIRTY_SECONDS) {
      get_request_response_from_cache();
  } else {
      get_request_response_from_php_code();
      save_request_response_to_cache();
  }

如您所见,这是一个高级函数,意味着正在执行的实际代码受到控制。在此示例中,特定页面的代码将仅每 30 秒执行一次(除非出现竞争条件)。

于 2013-03-08T08:23:19.357 回答