UNIX/Linux C 程序员需要掌握的七种武器
admin 11年前 (2014-07-08) 2746浏览 0评论
我是一名普通的软件工程师,不是什么技术大牛。这篇文章所提到的“七种武器”只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正。 (一)C语言 作为一名C程序员,熟练掌握C语言是最基本的一项技能。关于如何学好C语言,以及C语言话题的讨论...
admin 11年前 (2014-07-08) 2746浏览 0评论
我是一名普通的软件工程师,不是什么技术大牛。这篇文章所提到的“七种武器”只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正。 (一)C语言 作为一名C程序员,熟练掌握C语言是最基本的一项技能。关于如何学好C语言,以及C语言话题的讨论...
admin 11年前 (2014-07-01) 7729浏览 0评论
今早石祤同学发现了一个问题:同样的两台服务器,相同的OS版本、内核版本、CPU型号、CPU核数,只是厂家不同,但是机器启动后sysctl里的kernel.pid_max值,一台是128k,一台是32k。看了一下/etc/sysctl.conf,两台都...
admin 11年前 (2014-07-01) 3459浏览 0评论
最近测试一个应用遇到问题:一旦压力略涨,应用的CPU就顶满。由于是多线程应用,直接就把系统的CPU耗完了。 本来想用gdb來调试的,结果gdb不给力,就在attach那里卡死,半天不动。后来想到了用perf来调试,果然找到了一处性能热点。修复热点以后...
admin 11年前 (2014-06-27) 2893浏览 0评论
今天一个朋友向我咨询怎么去优化 MySQL,我按着思维整理了一下,大概粗的可以分为21个方向。 还有一些细节东西(table cache, 表设计,索引设计,程序端缓存之类的)先不列了,对一个系统,初期能把下面做完也是一个不错的系统。 1. 要确保有...
admin 11年前 (2014-06-27) 2919浏览 0评论
收到一个mysql服务器负载告警,上去一看,load average都飙到280多了,用top一看,CPU跑到了336%,不过IO和内存的负载并不高,根据经验,应该又是一起索引引起的惨案了。 看下processlist以及slow query情况,发...
admin 11年前 (2014-06-27) 4208浏览 0评论
前阵子接触到一道关于数组内部链表(多用于内存池技术)的数据结构的题, 这种数据结构能够比普通链表在cache中更容易命中, 理由很简单, 就是因为其在地址上是连续的(=.=!), 借这个机会, 就对cpu cache进行了一个研究, 今天做一个简单的...
admin 11年前 (2014-06-23) 5020浏览 0评论
做benchmark测试的过程中,总是会涉及到linux操作系统底层的设置导致无法充分利用机器的性能,在调试的过程中,不少资料没能和linux kernel版本对应上导致一些参数的设置错误。根据现有服务器的硬件条件和软件版本做相关优化,把一些实践的心...
admin 11年前 (2014-06-23) 13951浏览 0评论
对于LINUX SA来说,服务器性能是需要我们特别关注的,包括CPU、IO、内存等等系统的优化变得至关重要,这里转载一篇非常不错的关于IO优化的文章,供大家参考和学习: 一、关于页面缓存的信息,可以用 cat /proc/meminfo 看到。其中...
admin 11年前 (2014-06-17) 14220浏览 0评论
最近在一个性能测试中遇到机器的CPU频率不对。查了一下原来是irqbalance和cpuspeed搞出来问题。 irqbalance 理论上: 启用 irqbalance 服务,既可以提升性能,又可以降低能耗。 irqbalance 用于优化中断分配...
admin 11年前 (2014-05-15) 2686浏览 0评论
Python 版本说明 Python 是由 Guido van Rossum 开发的、可免费获得的、非常高级的解释型语言。其语法简单易懂,而其面向对象的语义功能强大(但又灵活)。Python 可以广泛使用并具有高度的可移植性。本文 Linux 服务器...
admin 11年前 (2014-04-23) 5361浏览 0评论
对于一个运行中的进程,我们可以使用kill -STOP pid命令将其暂停执行,使用kill -CONT pid命令恢复其运行。 下面用一个实例说明: 1、首先使用tar命令打包/usr目录: [root@vps /]# tar zcf usr.ta...
admin 11年前 (2014-04-17) 2840浏览 0评论
SystemTap 应用: 对管理员,SystemTap可用于监控系统性能,找出系统瓶颈,而对于开发者,可以查看他们的程序运行时在linux系统内核内部的运行情况。主要用于查看内核空间事件信息,对用户空间事件的探测,目前正加紧改进。 安...
admin 11年前 (2014-04-17) 2962浏览 0评论
下面的问题将会检验你有关Linux系统上的Java程序的垃圾回收和High CPU排错的知识。在过度调用GC或及CPU占用率过高的时候,这种排错技术是至关重要的。假设你没有使用像是Compuware dynaTrace或者JVisualVMware这...
admin 11年前 (2014-04-15) 3535浏览 0评论
背景介绍: 随着线上服务器数量的增加,各种开源软件和工具的广泛使用,一些服务自动停止或无响应的情况时有发生。 而其中有很大一部分都是由于软件自身的稳定性或者机器硬件资源的限制而造成的,按道理来讲,这些情况都应该设法找到本质原因,然后避免再次出现。 但...
admin 11年前 (2014-01-30) 3503浏览 0评论
这回说说怎样通过 cgroups 来管理 cpu 资源。先说控制进程的 cpu 使用。在一个机器上运行多个可能消耗大量资源的程序时,我们不希望出现某个程序占据了所有的资源,导致其他程序无法正常运行,或者造成系统假死无法维护。这时候用 cgroups ...
admin 11年前 (2013-10-31) 2827浏览 0评论
你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作——一些无法并行的操作。数据专家们,我是在对你们说。你可能有一个4核或更多核的CPU,但我们合适的工具,例如 grep, bzip2, wc, awk, sed等等,都是...
admin 12年前 (2013-08-05) 4442浏览 0评论
这篇文章的目的是要谈谈我的 Nginx 调优经验,就不涉及数据库调优的内容了。 初始服务器设置 我的服务器运行在亚马逊 EC2 t1 micro 上,选择 Nginx + PHP5-fpm 作为后端,因为一些安全因素还打开了SSL。 性...
admin 12年前 (2013-04-28) 3411浏览 0评论
都说Android手机的耗电和发热是与生俱来的,作为一个Android用户,我也深受其苦。于是刷了一个非官方的固件——Cyanogenmod。既然说是非官固件,总有特别的地方,在省电和性能的均衡方面,CM特地的设置了一个“调速器”的选项。Androi...