首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化my.cnf用于100+ wp数据库和低内存利用率

优化my.cnf用于100+ wp数据库和低内存利用率
EN

Stack Overflow用户
提问于 2020-01-13 07:49:27
回答 1查看 140关注 0票数 0

我有VDS: 6核和10 VDS内存与150+ WordPress站点。所有这一切都是基于CentOS 7,ISPManager网络面板与MariaDB 10.3在码头容器。网站不是高负荷,但每周3次集装箱关闭,因为RAM是低的。(杀死它)什么.my.cnf参数,你能为最佳和低内存使用?我怎样才能阻止OOM杀手制造的定期集装箱死亡?也许是CentOS7的一些系统调整?Tnx抱歉我错了

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-18 00:08:34

有许多设置可以减少帮助。innodb_buffer_pool_size通常是最大的,因此是第一个调整的。

10 is内存--里面是什么?一个MariaDB实例(带有150+数据库)?加上WP应用程序代码?

table_open_cache降低一点。

请提供此处讨论的GLOBAL STATUSVARIABLEshttp://mysql.rjweb.org/doc.php/mysql_analysis#tuning

swappiness = 1可能会有帮助。

(摘自评论)

MySQL/MariaDB可能永远不需要100个内核;3个内核可能很好。

100个连接可能永远不会同时处于活动状态;max_connections是可配置的限制,151是默认的(在某些版本中)。

WordPress的表上有一些效率低下的索引;这些额外的CPU和/或I/O时间花费了。可以用这个插件:进行改进。

我认为您已经找到了唯一在速度和数据丢失之间提供折衷的可调性(innodb_flush_log_at_trx_commit)。即便如此,损失的可能性也只有在崩盘时才会发生。

swappiness的背景是什么?如果是"0",或者没有分配交换空间,那么系统就会被配置为杀死进程,而不是当RAM被过度提交时崩溃。值"1“表示延迟交换,直到您真正需要。当数据库是系统中的主要进程之一时,我认为"1“是最优的。

如果现在没有交换空间,就分配一些交换空间。使用tophtop来监视内存、CPU、I/O和交换使用情况。我发现“通常”有更多的内存和交换被使用,我无法解释。

如果CPU使用率(或“负载平均值”)很高,我建议捕获。让我们来看看哪些查询消耗了最多的时间。

一个常见的CPU浪费(和/或I/O-浪费)是对查询将返回的“行总数”的无偿计算。慢速日志将指出哪些表很大,并在此类计算上浪费时间。然后考虑一下你是否可以在没有价值的情况下生活。(请注意,搜索引擎没有说“.在987,654,321次匹配中.”。这是有表现的!)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59712424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档