PHP MySql-每个页面加载中的最大查询数


PHP MySql - Maximum number of queries in each page load

我的应用程序平均有2000个在线用户,这是一个非常高的页面加载数量。我的问题是,在每个页面加载中,我能做多少mysql查询?因为我的应用程序需要加载大量数据。

我的数据库可能崩溃吗?还是我的服务器?

_____一些信息_____
内存限制:60Mb
并行进程:15
脚本执行时间:30 seg
DB:MySQL5(1Gb)

结构:在结构中,所有的表都非常好地相互连接。目前,95%的字段都是INT类型(由FOREIGN和PRIMARY键相关)。有14张桌子。总共有32个INT字段和6个TEXT字段。

如果我不能在服务器上安装应用程序,有其他方法可以缓存我的数据吗?

如果您有这样的负载,您可能应该开始考虑设置某种缓存,这样请求只会到达DB一次。

我会选择瓦尼什。

如果您有部分动态内容,例如与用户相关的数据,则可以将其与边侧包含一起使用。

此外,通过聚合选择条件,尽可能少地优化查询。例如,首先-收集所有需要选择的ids,然后-执行SELECT * FROM table WHERE id IN (...)

之后,您将能够在服务器端处理结果,而无需麻烦数据库


编辑

如果您无法在主机上安装任何应用程序,那么您应该通过一个请求获取尽可能多的数据,然后使用数组。

而且有索引字段也很重要,这将加快查询速度。

对于这种负载,您可能需要在应用程序和MySQL服务器之间设置多个具有复制功能和负载均衡器的服务器,以在多个实例之间分配读取负载(并考虑缓存和优化查询,如@theatonthelat所建议的)。这也有助于可用性(当一个DB服务器停机时,其他服务器可能会分担它的工作)