Swap对响应时间敏感应用的影响

标签: swap 响应时间 感应 | 发表时间:2014-07-27 21:10 | 作者:MauerSu
出处:http://www.iteye.com
源:http://blog.hesey.net/2014/05/swap-impact-on-rt-sensitive-apps.html
评:


最近排查的一个线上应用load高的问题,和GC以及Swap有关系。

现象是机器load突然升高,查看占用CPU的线程发现是JVM自己的线程。

jstat发现一个奇怪的现象,Eden Gen到了100%之后会持续好几秒,但Old Gen没有明显增大,说明并不是Eden Gen不够用promote到Old Gen了,感觉似乎是Young GC出了问题。

进一步查看GC Log,发现一次Young GC要1秒多,正常情况下20~30ms都应该结束了。

然而仔细去看那条log会发现CPU消耗并不高:

    [Times: user=0.23 sys=0.00, real=1.31 secs]

多出来的时间如果不在CPU上,那就是耗在了I/O上了,GC的I/O不会在网络上,只能是磁盘了。

free -m看了下,果然Swap的空间快被用满了都。

在排查到最终的内存原因前,先把Swap关掉:

sudo swapoff -a

对于Web应用等对响应时间(rt)非常敏感的系统来说,关闭Swap通常都是一个好的实践。

因为一般来说宁愿应用OOM挂掉也不愿意导致rt飙高,使得应用hang在那里的。

另外建议开启这两个参数:

    -XX:+HeapDumpOnOutOfMemoryError
    -XX:HeapDumpPath=path

帮助你在发生OOM时dump heap,一般这时候的heap dump质量都比较高:)
Written by Hesey Wang in: Java,Linux,技术 |
一条评论 »

    diwayou

    swap绝对是隐患啊,线上一般都是关闭的

    [回复]

已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [swap 响应时间 感应] 推荐:

Swap对响应时间敏感应用的影响

- - 互联网 - ITeye博客
源:http://blog.hesey.net/2014/05/swap-impact-on-rt-sensitive-apps.html. 最近排查的一个线上应用load高的问题,和GC以及Swap有关系. 现象是机器load突然升高,查看占用CPU的线程发现是JVM自己的线程. jstat发现一个奇怪的现象,Eden Gen到了100%之后会持续好几秒,但Old Gen没有明显增大,说明并不是Eden Gen不够用promote到Old Gen了,感觉似乎是Young GC出了问题.

SWAP的罪与罚

- - 火丁笔记
说个案例:一台Apache服务器,由于其MaxClients参数设置过大,并且恰好又碰到访问量激增,结果内存被耗光,从而引发SWAP,进而负载攀升,最终导致宕机. 正所谓:SWAP,性能之大事,死生之地,存亡之道,不可不察也. 最容易想到的就是free命令了,它指明了当前SWAP的使用情况:. 另一个常用的是sar命令,它能列出系统在各个时间的SWAP使用情况:.

NUMA 架构中 MySQL 的 “swap insanity” 问题

- khsing - Linux@SOHU
翻译:王鑫、朱翊然、李凯、曾怀东、马少兵、林业. 在一台包括了2个4核CPU,64GB内存的服务器上,给 MySQL 配置了 48GB 之巨的 InnoDB 缓冲,随着时间的推移,尽管观察到的数据(见最后注1)表示并没有真正的内存压力,Linux 也会把大量的内存交换到磁盘上. 通过监控发现,配置的内存超过了实际所需,而且也不存在内存泄漏,mysqld的RSS占用正常且稳定.

[原]性能优化:Swap调优

- - tenfyguo的技术专栏
目标:解决大量Log写入占用大量的File Cache,内容利用不充分导致swap. 基本原则: 尽量使用内存,减少swap,同时,尽早flush到外存,早点释放内存给写cache使用. ---特别在持续的写入操作中,此优化非常有效. vm.swapiness :60 改成 10. vm.dirty_ratio:90 改成 10.

系统性能监控之 Swap Space

- - Darktea
对线上服务器进行性能监控时, 需要关注各种性能指标, 从各个方面来对系统性能进行监控. 例如, 系统负载, cpu 占用, 内存占用, 网络带宽等. 其中 Swap Space 的使用状况也是值得关注的一项, 本文对在 Linux 环境中监控 Swap Space 的相关内容进行了总结.. 一, 首先简单的介绍一下什么是 Swap Space.

SwAp Rebel 也跟着潮流,推出新一代手机腕表

- David Z - Engadget 中国版
售价约 300 美金,1900元人民币左右,官网 有更多图片. 引用来源 | 此文章网址 | 转寄此文章 | 回应.

找到MySQL服务器发生SWAP罪魁祸首

- - iMySQL
MySQL数据库服务器发生SWAP相信很多人都遇到过,如何找出元凶,又如何应对呢. 在昨晚的知数堂公开课中,其实用的就是本次的案例. 本次公开课的PPT、视频已上传到百度云盘,链接: https://pan.baidu.com/s/1eR53Qd8,欢迎转存及转发(扫描下方二维码识别). 知数堂培训全新MySQL DBA课程第九期和Python运维开发班第三期正在招生中,扫描下方二维码加入QQ群 529671799 (加群暗号:知数堂) 获得最新信息.

Linux性能:为什么你应该添加交换空间swap

- - myfreax
我们知道使用Linux交换空间而不是 RAM(内存)会严重降低性能. 那么,有人可能会问,既然我有足够多的可用内存,删除交换空间不是更好吗. 启用交换空间会带来性能优势,即使您有足够多的内存. 即使安装了足够多的服务器内存,您也会经常发现在长时间正常运行后会使用交换空间. 请参阅以下来自具有大约一个月正常运行时间的实时聊天服务器的示例:.

MySQL如何避免使用Linux的swap分区而提升读写性能

- timo - 服务器运维与网站架构|Linux运维|互联网研究
Linux有很多很好的内存、IO调度机制,但是并不会适用于所有场景. 对于DBA来说Linux比较让人头疼的一个地方是,它不会因为MySQL很重要就避免将分配给MySQL的地址空间映射到swap上. 对于频繁进行读写操作的系统而言,数据看似在内存而实际上在磁盘是非常糟糕的,响应时间的增长很可能直接拖垮整个系统.

性能测试知多少---响应时间

- - 博客园_首页
在上一节中,我们讲到吞吐量,做为一个用户你可以对吞吐量毫不关心,但响应时间却是用户感受系统性能的主要体现. 从用户角度来说,软件性能就是软件对用户操作的响应时间. 说得更明确一点,对用户来说,当用户单击一个按钮,发出一条指令或在web页面上单击一个链接,从用户单击开始到应用系统把本次操作的结果以用户能察觉的方式展示出来,这个过程所消耗的时间就是用户对软件性能的直观印象.