我正在运行一个每天有超过40,000个唯一身份访问者的pressflow网站,以及node_revision中的近80,000条记录,并且我的网站会随机挂起,提供“网站离线”消息。我已将我的数据库移动到innodb,它仍然继续。我使用my-huge.cnf作为我的mysql配置。请告诉我更好的配置和所有这些的原因。我正在使用超过300GB和4GB RAM的专用服务器上运行。
答案 0 :(得分:1)
我怀疑您与数据库服务器的连接过多,这会耗尽服务器RAM。如果您在前叉模式下运行Apache并且PHP作为具有持久连接的Apache模块运行,并使用相同的服务器来提供图像,CSS,JavaScript和其他静态内容,则很可能就是这种情况。
如果是这种情况,那么可以采用的方法是将静态内容移动到单独的多线程Web服务器,如lighttpd或ngynx。这将避免Apache分支过多的进程,最终导致PHP建立太多持久连接,从而耗尽RAM。
答案 1 :(得分:1)
my-huge.cnf文件按照十年前的标准调整为“巨大”服务器,但它现在几乎没有合格的生产配置。我会检查与MySQL调优相关的其他主题,特别是考虑使用像Varnish这样的工具(因为你已经在Pressflow上)来缓存匿名流量。