关于find_busiest_group函数提现出的Linux性能问题
2019独角兽企业重金招聘Python工程师标准>>>
最近在查一个pgoneproxy的性能问题,发现当pgoneproxy与postgresql数据库部署到一台主机上面的时候,通过perf top可以看到find_busiest_group函数占有很大的比例,而当pgoneproxy和postgresql部署到不同的机器上面的时候此函数则不出现。初步分析应该是某些资源不足导致的。
为了弄清楚这个问题,首先的搞清楚find_busiest_group这个函数的作用,根据参考文献1)和2)了解到这个函数是与多核cpu的负载均衡有关系,及当有大量任务的时候分布不均的话那么此函数会被调用。那么通过查看cpu的负载均衡情况,发现具有如下的信息:
其中load average的平均15分钟的负载情况是37.58.由于我的主机是16逻辑CPU的,平均一个是2.34。这个cpu的队列长队比较长了。按照网络上各位的说法有0.7的,也有2的。现在是2.34肯定是超负载了。故当某个cpu的负载稍轻松点,那么cpu将会通过find_busiest_group查找最繁忙的cpu队列,把一部分进程移到轻松的cpu队列中。
这种情况下,最好是把pgoneproxy与postgresql数据库部署到不同的主机上面来解决cpu负载的问题。
在通过atop工具,可以查看到在进行大量的写操作,见下图的黑体部分:
查看上图中的进程信息,可以看到postgres在进行大量的写磁盘操作。从而导致整个cpu的利用率不高(通过top观察)。
参考文献:
1)linux在多核处理器上的负载均衡原理
2)多处理器运行队列的平衡
3)Linux Scheduling Domains
4)你值得拥有:25个Linux性能监控工具
转载于:https://my.oschina.net/u/918218/blog/701422
关于find_busiest_group函数提现出的Linux性能问题相关推荐
- Linux性能分析命令工具汇总
转自:http://rdc.hundsun.com/portal/article/731.html?ref=myread 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章. ...
- Linux 性能測试工具
Linux 性能測试工具 linux performance 查看系统配置 查看CPU信息 lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64- ...
- spotlight监控linux性能
linux性能监控有很多工具,spotlight只是其中一种 目录 1.安装spotlight 2.参数认识 1.安装spotlight spotlight不仅仅只是监控linux,还可以完成数据库以 ...
- 如何学习Linux性能优化?
如何学习Linux性能优化? 你是否也曾跟我一样,看了很多书.学了很多 Linux 性能工具,但在面对 Linux 性能问题时,还是束手无策?实际上,性能分析和优化始终是大多数软件工程师的一个痛点.但 ...
- linux服务器历险之linux性能监控
linux服务器历险之linux性能监控 1.uptime uptime命令用于查看服务器运行了多长时间以及有多少个用户登录,快速获知服务器的负荷情况. uptime的输出包含一项内容是load av ...
- linux性能优化--cpu篇
linux性能优化--cpu篇 前言 负载 CPU使用率 proc perf 一些链接 `perf list` 比较有用的event `perf stat` `perf record` Profili ...
- Nmon 性能:分析 AIX 和 Linux 性能的免费工具
原文摘自: http://www.ibm.com/developerworks/cn/aix/library/analyze_aix/ 官网:http://www.ibm.com/developerw ...
- 超全整理 | 嵌入式Linux 性能工具和诊断思路
作为程序员,和 Linux 打交道,在服务器上分析系统性能情况,我觉得是每一个后端工程师都无法避开的事情. 无论你是开发还是运维,可能都经历过这样的场景: 流量高峰期,服务器 CPU 使用率过高报警, ...
- 10个问题带你全面理解Linux性能优化
10个问题带你全面理解Linux性能优化 • Feiskyhttps://feisky.xyz/posts/2020-06-06-linux-perf/本文整理自极客时间"10个问题带你全面 ...
- LR 杂记--nmon 分析 AIX 和 Linux 性能
用法说明:这个 nmon 工具并未受到正式支持.没有提供或隐含任何保证,并且您无法从 IBM 获取相关的帮助. nmon 工具运行于: AIX® 4.1.5.4.2.0.4.3.2 和 4.3.3(n ...
最新文章
- Mdnice 简洁主题
- (收藏)Wp7开发中文网站
- docker+httpd的安装
- 收集的一些jQuery (我平常用的少的,但确实挺有效果的)
- 【原】简单shell练习(四)
- 从如何停掉 Promise 链说起
- 谷歌Chrome 80稳定版更新:对浏览器进行两项重大的更改
- 数据结构之线索二叉树
- 怎么解决web service circular reference 问题
- java biginteger log_java – BigInteger:计算可伸缩方法中的小数位数
- web编程 模块1 html,Web编程基础第1章HTML基础.ppt
- [Erlang危机](5.1.0)VM检测概述
- java源程序编译的结果_java源程序编译后
- vmware vSAN 入门
- 图解TCPIP(第5版)
- STM8S项目创建(STVD创建)---使用 COSMIC 创建 C 语言项目
- 新cBSS敏捷发布实践
- 2018款树莓派3b+ 登陆中国
- 设置透明背景和转换图片格式的技巧
- 计算机毕业设计android的消防安全知识宣传app(源码+系统+mysql数据库+Lw文档)