万兆网络环境下的nginx压力测试 (二)
admin 10年前 (2014-11-13) 5393浏览 0评论
参考文章:Nginx 万兆网络环境测试 上周在proxy层测试url hash万兆网卡服务器过程中发现服务器内存用满,使用大量的swap,导致服务器无响应。 一、 现象描述: swap 100%,IO超过60%; nginx每进程占用内...
admin 10年前 (2014-11-13) 5393浏览 0评论
参考文章:Nginx 万兆网络环境测试 上周在proxy层测试url hash万兆网卡服务器过程中发现服务器内存用满,使用大量的swap,导致服务器无响应。 一、 现象描述: swap 100%,IO超过60%; nginx每进程占用内...
admin 10年前 (2014-11-06) 3754浏览 0评论
虽然并非你编写的每个 Python 程序都要求一个严格的性能分析,但是让人放心的是,当问题发生的时候,Python 生态圈有各种各样的工具可以处理这类问题。 分析程序的性能可以归结为回答四个基本问题: 正运行的多快 速度瓶颈在哪里 内存使用率是多少 ...
admin 10年前 (2014-11-05) 3397浏览 0评论
linux下使用动态库,基本用起来还是很容易。但如果我们的程序中大量使用动态库来实现各种框架/插件,那么就会遇到一些坑,掌握这些坑才有利于程序更稳健地运行。 本篇先谈谈动态库符号方面的问题。 测试代码可以在github上找到 符号查找 一个应用程序t...
admin 10年前 (2014-11-05) 4382浏览 0评论
OOM command not allowed when used memory > ‘maxmemory’ 报错排查 grep “OOM command not allowed when used memory > ‘maxmemory...
admin 10年前 (2014-09-12) 3924浏览 0评论
在用户态C语言程序中,我们对内存分配函数malloc()或calloc()非常熟悉;函数执行成功,就会返回需要的内存起始地址。显然这些函数在在内核态没法运行,在内核态有专门的内存申请/释放函数。 Linux内核中,如何分配和回收内存?空闲内存如何管理...
admin 10年前 (2014-08-26) 3572浏览 0评论
问题:我想知道当我调用一个特定的可执行文件在运行时载入了哪些共享库。是否有方法可以明确Linux上可执行程序或运行进程的共享库依赖关系? 查看可执行程序的共享库依赖关系 要找出某个特定可执行依赖的库,可以使用ldd命令。这个命令调用动态链接器去找到程...
admin 11年前 (2014-08-14) 3735浏览 0评论
前些天一个Nginx+PHP项目上线后遭遇了性能问题,于是打算练练手,因为代码并不是我亲自写的,所以决定从系统层面入手看看能否做一些粗线条的优化。 首先,我发现服务的Backlog设置过小,可以通过ss命令查询Send-Q来确认: [root@aik...
admin 11年前 (2014-08-10) 3127浏览 0评论
As3 这门语言在本身设计的时候处理内存泄漏机制很不完善,所以造成了内存无限制的占用,最后导致内存占用过高直至程序假死或者崩溃。 现在可以通过以下方法有效的降低内存占用: 1,及时将所有不需要的变量,以及对象清除(置为null).如果变量或对象被引用...
admin 11年前 (2014-07-09) 3329浏览 0评论
很不幸机器最近1周一台跑了3年多的机器挂了两次.为了过好5/1决定好好检查一下情况,不幸的是到目前为止还是没有确认最终的因素. 1.检查案发时间:通过cacti的记录,发现机器发生不幸发生在0点到2点之间.这个时间段是后台定时任务运行的高发期. 2....
admin 11年前 (2014-07-09) 4882浏览 0评论
同事在 Linux 服务器上遇到点小问题,我也上去折腾半天。这还是第一次注意到 Linux 这个多年来就存在的特性:OOM Killer 。说白了 OOM Killer 就是一层保护机制,用于避免 Linux 在内存不足的时候不至于出太严重的问题,把...
admin 11年前 (2014-07-08) 3225浏览 0评论
注:这篇文章基于我在布达佩斯的RuPy大会上所作的演讲。我觉得与其直接将幻灯片发布出来,不如在我还有印象的时候将它写成博客来的更有意义。同 样,我会在将来发布RuPy大会的视频链接。我计划将在RubyConf大会上发表类似的演讲,除了有关于Pytho...
admin 11年前 (2014-07-04) 4830浏览 0评论
早上6点,我不得不开始处理“叫醒”我的一些问题。因为当这些问题发生的时候,我的手机铃声响了。昏睡中的我非常不情愿地拿起了手机,检查我是否疯狂到将叫醒闹钟设在了早上5点。原来是监控系统发现一个Plumbr服务死掉了。 作为一名该领域经验丰富的高手,我首...
admin 11年前 (2014-06-27) 2893浏览 0评论
今天一个朋友向我咨询怎么去优化 MySQL,我按着思维整理了一下,大概粗的可以分为21个方向。 还有一些细节东西(table cache, 表设计,索引设计,程序端缓存之类的)先不列了,对一个系统,初期能把下面做完也是一个不错的系统。 1. 要确保有...
admin 11年前 (2014-06-26) 3104浏览 0评论
白忙活了近2个小时,不吐不快: 一切要从今天下午5点左右说起, 调试一个扩展, 用valgrind(valgrind-3.8.1)做例行检查, 很不幸的valgrind报告invalid read: db attach上去以后, 发现报告错误的地方是...
admin 11年前 (2014-06-23) 2673浏览 0评论
如何定位应用程序开发中的内存问题,一直是 inux 应用程序开发中的瓶颈所在。有一款非常优秀的 linux 下开源的内存问题检测工具:valgrind,能够极大的帮助你解决上述问题。掌握 valgrind 的使用以及工作原理,能够有效地定位进而避免应...
admin 11年前 (2014-06-23) 13951浏览 0评论
对于LINUX SA来说,服务器性能是需要我们特别关注的,包括CPU、IO、内存等等系统的优化变得至关重要,这里转载一篇非常不错的关于IO优化的文章,供大家参考和学习: 一、关于页面缓存的信息,可以用 cat /proc/meminfo 看到。其中...
admin 11年前 (2014-06-03) 3112浏览 0评论
【问题现象】 线上mysql数据库爆出一个慢查询,DBA观察发现,查询时服务器IO飙升,IO占用率达到100%, 执行时间长达7s左右。 SQL语句如下: SELECT DISTINCT g.*, cp.name AS cp_name, c.name...
admin 11年前 (2014-04-17) 2947浏览 0评论
遇到一些无良的idc超卖严重的话分配到我们手里的内存可能并不是标配的内存,这时可以用以下脚本来检测一下。 先关闭swap,这样测出来的才是内存,或者不关闭直接测试然后去除swap值就是真实可用内存了。 关闭SWAP sudo swapoff -a 开...