对于linux中的上下文一直以来没有特别的关注其合理范围应该是多少(关于上下文切换的概念,网上已经有很多解释了,再次不再重复),白天偶尔注意到了一下,晚上特地看了下白天负载和和收盘后的负载如下(服务器1,8C/16GB,运行1个mysql,8个java进程,1个rabbitmq):

相应时间段的上下文切换如下:

总的来说,服务器空闲期间,上下文在2000-2500左右。

服务器2(1个mysql,这是我们优化行情和风控之后的负载,原来平均在45%左右):

服务器3(1个mysql):

至于负载比较忙的时间,上下文切换应该是个什么样的值,这个主要还是根据系统类型(cpu密集型或io密集型)不同而不同以及运行了多少个进程、线程有关系。

如果system%占比较高,通过taskset设置绑定进程到特定的cpu可能会有一定的缓解(taskset的作用与其说是让进程绑定在特定cpu执行,不如说设置了更高的优先级)。

system%和user%的合理cpu应该是怎么样呢?

作为一个参考或者经验总结:

  1. 对于每一个CPU来说运行队列不要超过3,例如,如果是双核CPU就不要超过6;

  2. 如果CPU在满负荷运行,应该符合下列分布,

  a) User Time:65%~70%

  b) System Time:30%~35%

  c) Idle:0%~5%

PS:关于上下文切换的概念,可参考:http://blog.sina.com.cn/s/blog_4adc4b090102vufu.html

关于linux中的上下文切换相关推荐

  1. Linux 中的零拷贝技术,第 2 部分

    技术实现 本系列由两篇文章组成,介绍了当前用于 Linux 操作系统上的几种零拷贝技术,简单描述了各种零拷贝技术的实现,以及它们的特点和适用场景.第一部分主要介绍了一些零拷贝技术的相关背景知识,简要概 ...

  2. linux中负载值为多少正常_Linux load average负载量分析与解决思路

    一.load average top命令中load average显示的是最近1分钟.5分钟和15分钟的系统平均负载.系统平均负载表示 系统平均负载被定义为在特定时间间隔内运行队列中(在CPU上运行或 ...

  3. linux用8m内存读取1g日志,检查 Linux 中内存使用状况的 8 条命令

    Linux 并不像 Windows,你常常不会有图形界面可供使用,特别是在服务器环境中.html 做为一名 Linux 管理员,知道如何获取当前可用的和已经使用的资源状况,好比内存.CPU.磁盘等,是 ...

  4. Linux中使用异步 I/O 大大提高应用程序的性能

    Linux中使用异步 I/O 大大提高应用程序的性能 原文: http://www.ibm.com/developerworks/cn/linux/l-async/ AIO 简介 Linux 异步 I ...

  5. Linux 中统计一个进程的线程数

    如果你想看到 Linux 中每个进程的线程数,有以下几种方法可以做到这一点. 方法一: /proc proc 伪文件系统,它驻留在 /proc 目录,这是最简单的方法来查看任何活动进程的线程数. /p ...

  6. Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈

    栈是什么?栈有什么作用? 首先,栈 (stack) 是一种串列形式的 数据结构.这种数据结构的特点是 后入先出 (LIFO, Last In First Out),数据只能在串列的一端 (称为:栈顶 ...

  7. Linux 中的零拷贝技术

    引言 传统的 Linux 操作系统的标准 I/O 接口是基于数据拷贝操作的,即 I/O 操作会导致数据在操作系统内核地址空间的缓冲区和应用程序地址空间定义的缓冲区之间进行传输.这样做最大的好处是可以减 ...

  8. linux中top命令_Linux中的top命令指南

    linux中top命令 The atop command is a tool for monitoring system resources in Linux. It displays tons of ...

  9. 一文读懂 | Linux 中的各种栈:进程栈 线程栈 内核栈 中断栈

    点击蓝字 关注我们 因公众号更改推送规则,请点"在看"并加"星标"第一时间获取精彩技术分享 来源于网络,侵删 栈是什么?栈有什么作用? 首先,栈 (stack) ...

最新文章

  1. 为Keil添加注释的快捷键
  2. python【蓝桥杯vip练习题库】ADV-233 队列操作
  3. 增加 oracle服务名,oracle本地服务名配置说明
  4. cordova报错:Could not find an installed version of Gradle either in Android Studio, or on your system
  5. 计算机视觉之OpenCV教程 --- Mat图像类基础(二)
  6. 7-100 倒数第N个字符串 (15 分)
  7. 透析Java本质-谁创建了对象,this是什么
  8. bandgap带隙基准电路设计,cadence,
  9. 通过TCP/IP实现PC(客户端)远程控制开发板(服务器)上LED灯的实验
  10. 如何集中远程管理各种USB设备,还不了解一下?
  11. 如何录制计算机上的音乐,电脑上听歌曲,怎么把它录下来呢
  12. SSM-Mybatis的Mapper.xml配置文件
  13. Windows11 正式版 iso镜像下载
  14. Conflux CTO 伍鸣博士出席 2019 CAN 大会
  15. Spark学习笔记1——第一个Spark程序:单词数统计
  16. matlab 多子图共x轴
  17. 数字赋能 共创未来憨猴科技“共域时代”年度大会成功举办
  18. 苹果会下架所有的基于H5的开发的APP?
  19. msconfig运行不了的解决方案
  20. 三面(技术+HR面试)网易,分享我的面试经验!(已拿offer)

热门文章

  1. 弹出无边框网页的Javscrpt代码
  2. 怎样高效实现增长?这里有50个经典的增长黑客策略
  3. [填坑]SerialPort的“端口被关闭”
  4. 实例解读:如何减少Docker中的Java内存消耗
  5. Web前端面试指导(六):面试后需要总结和交流
  6. 查询一个ID出现2种结果的情况
  7. 我就随便写写,你也随便看看。
  8. curl工具使用实例
  9. JAVA 通过串口发送命令
  10. 排除“使用主题 css 文件要求页上有标头控件。(例如 head runat=server /)”错误...