我的应用程序平均有 2000 个在线用户,这是一个非常高的页面加载量。我的问题是在每个页面加载中我可以执行多少个 mysql 查询? 因为我的应用程序需要加载大量数据。
我的数据库有可能崩溃吗?还是我的服务器?
_____ 一些信息_____
内存限制:60Mb
并行进程:15
脚本执行时间:30段
数据库:MySQL5 (1Gb)
结构:在结构中,所有表都相互关联良好。至少 95% 的字段都是 INT 类型(通过 FOREIGN 和 PRIMARY 键相关)。 有14张 table 。总共有 32 个 INT 字段和 6 个 TEXT 字段。
如果我无法在服务器上安装应用程序怎么办,是否有其他方法来缓存我的数据?
最佳答案
如果您有这样的负载,您可能应该开始考虑设置某种缓存 - 这样请求只会访问数据库一次。
我的选择是 Varnish .
如果您有部分动态内容(例如与用户相关的数据),您可以将其与 Edge Side Includes 一起使用。 .
此外,尝试通过聚合选择条件来尽可能少地优化查询。例如,首先 - 收集您需要选择的所有 ids
,然后 - SELECT * FROM table WHERE id IN (...)
之后 - 您将能够在服务器端处理结果,而无需打扰数据库
<小时/>编辑
如果您无法在主机上安装任何应用程序 - 那么您应该继续通过一个请求获取尽可能多的数据,然后 - 使用数组。
此外,拥有索引字段很重要 - 这将加快您的查询速度。
关于PHP MySql - 每个页面加载的最大查询数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11776438/