我目前正在为我的服务器制作一个小网页,其中显示了播放它的玩家的一些统计数据。它工作得很好,但我只是想知道我是否可以减少与数据库的连接数量。目前,我在页面中有一些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/
答案 0 :(得分:1)
好的,更详细的:
只与您的服务器all.php建立一个连接。正如RoryPickering所说,为此使用$ .ajax。
在服务器端,只调用all.php一次。
将数据库连接设置为持久性,因此您只需连接一次数据库。
我怀疑你只用一个查询就可以获取所有数据,所以我猜你必须不止一次地查询数据库。
获取所有数据并将其转换为JSON格式,然后返回给客户端。
在客户端,将JSON数据拆分为相应的区域/所需的子数据。