php - 减少数据库连接

标签 php jquery mysql database-connection

我目前正在为我的服务器制作一个小网页,其中显示了在该网页上玩的玩家的一些统计数据。它工作得很好,但我只是想知道是否可以减少与数据库的连接量。目前,我在页面中有一些 JQuery 代码,可以刷新部分内容以显示最新数据。现在,我以前从未使用过 JQuery,所以我这样做了:

<script>
 $(document).ready(function() {
     $("#blocks").load("blocks.php<? if($usePlayer){echo("?player=" . $player);} ?>");
     $("#global_stats").load("globalstats.php<? if($usePlayer){echo("?player=" . $player);} ?>");
     $("#top_entities").load("entities.php<? if($usePlayer){echo("?player=" . $player);} ?>");
   var blockRefresh = setInterval(function() {
      $("#blocks").load("blocks.php<? if($usePlayer){echo("?player=" . $player);} ?>");
   }, 5000);
   var globalStatsRefresh = setInterval(function() {
       $("#global_stats").load("globalstats.php<? if($usePlayer){echo("?player=" . $player);} ?>");
   }, 30000);

   $.ajaxSetup({ cache: false });
});
</script>

问题是,我重新加载的页面的所有三个部分都需要 MySQL 数据库连接。目前,我在每个页面上都包含 db.php,但这似乎效率很低。这样做的好方法是什么?

哦,页面可以在这里看到:http://mc.centrility.nl/stats/

最佳答案

好的,更详细:

仅与您的服务器 all.php 建立一个连接。正如 RoryPickering 所说,为此使用 $.ajax。

在服务器端,仅调用一次 all.php。

将数据库连接设置为持久连接,这样您只需连接到数据库一次。

我怀疑您是否只能通过一次查询来获取所有数据,因此我猜您将不得不多次查询数据库。

获取所有数据并将其转换为 JSON 格式,然后返回给客户端。

在客户端,将 JSON 数据拆分为您所需的区域/所需的子数据。

关于php - 减少数据库连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11541962/

相关文章:

php - MySQL SELECT 查询四舍五入到小数点后 12 位

java - jQuery 模板和 Backbone.js

javascript - 防止 javascript/jquery 中的表单自动填充

jquery - 从外部文件 jQuery 加载数据

mysql - 对于 SQL 查询,使用 where 子句错误计数

mysql - 是否可以从 MySQL 的事务回滚中排除某些查询/过程?

mysql - 获取所有行具有相同列值的mysql数据

php - 对一列中的 group_concat 值进行排序

php - 如何使用 htaccess 避免 php 中同一文件的多个路径?

PHP 导入 CSV 文件时出现奇怪的字符