文档章节

关于find_busiest_group函数提现出的Linux性能问题

harris2016
 harris2016
发布于 2016/06/27 16:07
字数 482
阅读 416
收藏 0

    最近在查一个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性能监控工具

 

© 著作权归作者所有

harris2016
粉丝 10
博文 54
码字总数 30661
作品 0
杭州
程序员
私信 提问
linux在多核处理器上的负载均衡原理

原文出处:http://donghao.org/uii/ 【原理】 现在互联网公司使用的都是多CPU(多核)的服务器了,Linux操作系统会自动把任务分配到不同的处理器上,并尽可能的保持负载均衡。那Linux内核是怎...

晨曦之光
2012/03/09
3.2K
0
关于Android Studio和原生模拟器性能的提升

不废话,先看看我电脑的配置 我买的时候是4k多,现在想这样的电脑应该很便宜啦。 关于配置问题,处理器是很重要的,一定要能支持硬件虚拟化技术 有硬件虚拟化技术的CPU,在启动android原生模...

BugScanner
2015/10/07
5.5K
6
Linux运维工程师笔试题系列5(30题)

Linux运维工程师笔试题系列5(30题) 如果您对问题有疑问,或者认为答案不准确的,欢迎留言交流。 问题如下: 1. 建立动态路由需要用到的文件有() A /etc/hosts B /etc/gateways C /etc/re...

优惠券发放
2018/06/05
0
0
ggplot2学习笔记系列之利用ggplot2绘制误差棒及显著性标记

绘制带有误差棒的条形图 library(ggplot2) #创建数据集 df <- data.frame(treatment = factor(c(1, 1, 1, 2, 2, 2, 3, 3, 3)), response = c(2, 5, 4, 6, 9, 7, 3, 5, 8), group = factor(c......

R语言中文社区
2018/02/12
0
0
Linux新手渗透指南:从枚举到内核利用

   背景   许多人都认为Linux是最安全的操作系统,因此在对Linux的安全问题上也放松了警惕。那么事实真的如此吗?其实安全从来都只是相对的,Linux也不例外。虽然它加载了强大的安全机制...

FreeBuf
2018/07/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

python虚拟环境 virtualenv

python虚拟环境 virtualenv virtualenv为Python项目创建虚拟环境,让不同的项目使用不同的环境,不会产生影响。 virtualenvwrapper是对virtualenv的封装,使用更方便。 安装 pip3 install v...

xiaobai1315
5分钟前
0
0
网络安全-->浅谈UDP协议

简介 UDP-传输控制协议 三大特点: 1、无连接的 2、不可靠的 3、面向数据报 基于UDP的网络协议 1、NFS:网络文件协议 2、TFTP:简单文件传输协议 3、DHCP:动态主机配置...

qrainly
9分钟前
0
0
在进行远程桌面时,经常锁屏怎么解决?

  想要在远程电脑的时候不出现锁屏的现象,首先,你需要将远程电脑设置为允许远程连接。在远程电脑上,打开“设置” 并选择“系统”>“关于”。记下电脑名称。稍后将需要使用此名称。然后,...

takethelas
12分钟前
0
0
小猿圈java之数组

基本数据结构中,数组是很重要的,这篇小猿圈加加对数组详解一席,具体使用,在学习过程中有困惑的朋友,可以看一下加加的这篇文章,看到就是赚到,让我们一起看看吧。 一、数组的基本使用 ...

小猿圈加加
12分钟前
0
0
如何基于日志,同步实现数据的一致性和实时抽取?

7月25日晚8点,线上直播,【AI中台——智能聊天机器人平台】,点击了解详情。 一、背景 事情是从公司前段时间的需求说起,大家知道宜信是一家金融科技公司,我们的很多数据与标准互联网企业不...

宜信技术学院
22分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部