linux交换区使用过多导致的性能问题
近日,我们开发发现有一台配置相同的服务器跑的特别慢,相同数据量的情况下,其他服务器只要跑10分钟,这台服务器要跑50分钟,经确认,所有的应用层配置参数都相同。上去之后,发现该服务器swap使用比较多,大概有8-10G左右(配置了32G,1:1),该服务器上的应用进程内存使用量(PSS)和其他服务器差不多,不存在特别多的情况。为了尽可能不使用交换区,将vm.swappiness设置为0了,重跑,发现运行一段时间之后,cached和free都没有了,swap又上去了,但是rss占用一直在十几个G(pss大约30G),和其他服务器没有太大的差别,按说不应该这么快就需要大量的交换区。查看sar -B,发现在运行缓慢的这段时间,有大量的majflt,如下:
对应这段时间的iowait也很高
但是有一个不匹配的奇怪现象,就是commit只有30%(commit是指为了保证不内存溢出,需要的物理内存总量),如下:
最后,将swap关掉,今天再观察情况。
注:swap本身并没有问题,使用swap的目的是为了应对突然高峰期时有应用内存剧增导致OOM,但是长时间的swap交换严重就会导致应用性能极端低下。如果这种情况不可避免,短时间内又无法扩充内存(不过现在的服务器,一般都可以最多插64根内存,目前单根主流为16GB(最大可达128GB单根,http://www.sohu.com/a/208300643_100034486),可以达到1TB内存),可以考虑将swap建在最快的磁盘上,尽可能的提高性能。
Linux 查看内存的插槽数,已经使用多少插槽.每条内存多大
dmidecode|grep -A5 "Memory Device"|grep Size|grep -v Range
linux交换区使用过多导致的性能问题相关推荐
- PostgreSQL 查询涉及分区表过多导致的性能问题 - 性能诊断与优化(大量BIND, spin lock, SLEEP进程)
摘要: 标签 PostgreSQL , 分区表 , bind , spin lock , 性能分析 , sleep 进程 , CPU空转 , cache 背景 实际上我写过很多文档,关于分区表的优化: ...
- Linux下php-fpm进程过多导致内存耗尽问题解决
当个人博客数据库服务经常突然挂断,造成无法访问时我们能做什么?本篇主题就是记录博主针对这一现象时发现问题,分析问题,最后解决问题的过程. 欢迎访问我的个人博客 发现问题 最近,发现个人博客的Linux ...
- Linux处理Redis连接数过多导致连接超时问题
原因 redis服务器默认设置的最大连接数maxclients是10000,但是受服务器最大文件数影响,服务器默认最大文件数是1024 处理方案 修改limits.conf主配置文件 vim /etc ...
- linux交换内存_Linux中的交换内存如何工作?
linux交换内存 To understand what Swap memory in Linux is, we will have a look at the concept of RAM and ...
- Linux内存耗尽宕机6,转载:Linux服务器Cache占用过多内存导致系统内存不足最终java应用程序崩溃解决方案...
原文链接: https://blog.csdn.net/u014740338/article/details/66975550 问题描述 Linux内存使用量超过阈值,使得Java应用程序无可用内存, ...
- Linux 查看交换区内容,Unix: Unix/Linux/Win的虚拟交换区信息的查看
Unix: Unix/Linux/Win的虚拟交换区信息的查看 Solaris ======= # swap -l swapfile dev swaplo blocks ...
- Linux系统内存还有剩余就开始使用swap交换区了
程序运行缓慢,查看内存剩余的时候发现Linux系统内存还有60G剩余就开始使用swap交换区了.发现vm/swappiness设置是默认值60,也就是内存使用超过40%(100-60)的时候就会使用交 ...
- Linux服务器Cache占用过多内存导致系统内存不足问题的排查解决
Linux服务器Cache占用过多内存导致系统内存不足问题的排查解决 参考文章: (1)Linux服务器Cache占用过多内存导致系统内存不足问题的排查解决 (2)https://www.cnblog ...
- linux java缓存失效_转载:Linux服务器Cache占用过多内存导致系统内存不足最终java应用程序崩溃解决方案...
原文链接: https://blog.csdn.net/u014740338/article/details/66975550 问题描述 Linux内存使用量超过阈值,使得Java应用程序无可用内存, ...
最新文章
- AC日记——[USACO07DEC]手链Charm Bracelet 洛谷 P2871
- Python这几个内置函数简直是屌爆了!!!
- 网狐棋牌(六) DataBaseEngine 和 网狐棋牌(七) CEventService
- 前端学习(2613):action的方法
- [UI] 精美UI界面欣赏[8]
- easyUI+servlet+mysql项目总结
- 阿里java规范_阿里Java规范
- x86基础之数与数据类型
- 抖音招商团长入驻条件
- Jquery引用在线CDN公共资源库
- Android小程序-乐学成语背景音乐(五)
- Linux监控平台介绍
- Debian apache
- 在线接口Mock工具fastmock详解
- 基于UE4 的AirSim虚拟仿真
- oracle修改clob值,oracle 修改 clob字段,查询clob字段
- LVGL 官方UI设计工具 EdgeLine代码移植
- 视频教程-通俗易懂的SVN入门教程(含配套资料)-Java
- 关注点云 专栏及博主
- SBFD(Seamless Bidirectional Forwarding Detection)