【发布时间】:2013-08-18 10:50:53
【问题描述】:
我有一个用 PHP 编写的 webapp,它目前在每个页面上创建一个数据库连接(使用 mysqli_connect)以从数据库中提取数据。
最近,我的网站速度变慢了(流量增加了一些),我想知道创建如此多的连接(任何页面上的每个用户一个连接)是否会导致速度变慢?
有什么解决办法吗?
是否可以为服务器创建一个可共享的连接?我知道这在 python 中是可能的,但我不知道如何在 PHP 中实现这样的模型。
注意:我的网站在 BlueHost 上...我不知道这是否也会产生影响。
【问题讨论】:
-
为什么认为数据库连接会拖慢您的网站速度?
-
对于任何“不是那么大”的流量,这根本不会减慢您的服务器的速度。您是否查看查询他们花费了多少时间?
-
我知道在 Python 中连接到数据库的开销很大,而且最近我的网站速度变慢了 - 有时服务器需要 20 秒才能加载。查询最多需要 0.5 秒。
-
如果您的查询正常,则很可能是负载平衡问题。这就是服务器需要很长时间才能响应的原因。
-
@Nicky93 我认为“执行查询时总是会遇到您的编码风格”。这不是一个好习惯。您应该避免每次都访问数据库。这是性能问题的事实之一。
标签: php mysql database-connection scalability