/
index.html
346 lines (346 loc) · 26.4 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Linux命令行系统性能检测工具(转)</title>
<meta name="author" content="陈子">
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le styles -->
<link href="/assets/themes/twitter/bootstrap/css/bootstrap.min.css" rel="stylesheet">
<link href="/assets/themes/twitter/css/style.css?body=1" rel="stylesheet" type="text/css" media="all">
<link href="/assets/themes/twitter/css/pygments/default.css" rel="stylesheet" type="text/css">
<!-- Le fav and touch icons -->
<!-- Update these with your own images
<link rel="shortcut icon" href="images/favicon.ico">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png">
<link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png">
-->
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="/">三斗室</a>
<ul class="nav">
<li><a href="/archive/">归档</a></li>
<li><a href="/categories/">分类</a></li>
<li><a href="/elk-errata/">《ELK stack权威指南》勘误</a></li>
<li><a href="/errata/">《网站运维技术与实践》勘误</a></li>
<li><a href="/pages/">Pages</a></li>
<li><a href="/projects/">学习记录</a></li>
<li><a href="/tags/">标签</a></li>
<li><a href="http://chenlinux.com/poetry/index.html" />诗文集</a></li>
<li><link title="RSS 2.0" type="application/rss+xml" href="http://chenlinux.com/feed.xml" rel="alternate" /><a href="http://chenlinux.com/feed.xml" target="_blank">RSS订阅</a></li>
</ul>
<ul class="nav pull-right"><li><a href="/about.html">有关我</a></li></ul>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="span7">
<div class="row">
<div class="page-header">
<h1>Linux命令行系统性能检测工具(转) <small></small></h1>
<div class="date"><span>03 November 2009</span></div>
</div>
<div style='background-color: #FFF;'>
<p>※注:下面附图的命令输出信息,以红旗DC Server 5.0 for x86 Sp1为基础平台,可能在不同的操作系统或核心版本有较大区别,对比时请留意。</p>
<ul>
<li>uptime</li>
</ul>
<p>Uptime 命令的显示结果包括服务器已经运行了多长时间,有多少登陆用户和对服务器性能的总体评估(load average)。load average值分别记录了上个1分钟,5分钟和15分钟间隔的负载情况,load average不是一个百分比,而是在队列中等待执行的进程的数量。如果进程要求CPU时间被阻塞(意味着CPU没有时间处理它),load average值将增加。另一方面,如果每个进程都可以立刻得到访问CPU的时间,这个值将减少。<br />
kernel下的load average的最佳值是1,这说明每个进程都可以立刻被CPU处理,当然,更低不会有问题,只说明浪费了一部分的资源。但在不同的系统间这个值也是不同的,例如一个单CPU的工作站,load average为1或者2都是可以接受的,而在一个多CPU的系统中这个值应除以物理CPU的个数,假设CPU个数为4,而load average为8或者10,那结果也是在2多点而已。<br />
<a href="http://www.linuxfly.org/attachment/1169008391_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008391_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
你可以使用uptime判断一个性能问题是出现在服务器上还是网络上。例如,如果一个网络应用运行性能不理想,运行uptime检查系统负载是否比较高,如果不是这个问题更可能出现在你的网络上。</p>
<ul>
<li>top</li>
</ul>
<p>Top命令显示了实际CPU使用情况,默认情况下,它显示了服务器上占用CPU的任务信息并且每5秒钟刷新一次。你可以通过多种方式分类它们,包括PID、时间和内存使用情况。<br />
<a href="http://www.linuxfly.org/attachment/1169008444_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008444_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
下面是输出值的介绍:</p>
<div class="highlighter-rouge"><pre class="highlight"><code>PID:进程标识
USER;进程所有者的用户名
PRI:进程的优先级
NI:nice级别
SIZE:进程占用的内存数量(代码+数据+堆栈)
RSS;进程使用的物理内存数量
SHARE;该进程和其他进程共享内存的数量
STAT:进程的状态:S=休眠状态,R=运行状态,T=停止状态,D=中断休眠状态,Z=僵尸状态
%CPU:共享的CPU使用
%MEM;共享的物理内存
TIME:进程占用CPU的时间
COMMAND:启动任务的命令行(包括参数)
</code></pre>
</div>
<p>** 进程的优先级和nice级别<br />
进程优先级是一个决定进程被CPU执行优先顺序的参数,内核会根据需要调整这个值。Nice值是一个对优先权的限制。进程优先级的值不能低于nice值。(nice值越低优先级越高)<br />
进程优先级是无法去手动改变的,只有通过改变nice值去间接的调整进程优先级。如果一个进程运行的太慢了,你可以通过指定一个较低的nice值去为它分配更多的CPU资源。当然,这意味着其他的一些进程将被分配更少的CPU资源,运行更慢一些。Linux支持nice值的范围是19(低优先级)到-20(高优先级),默认的值是0。如果需要改变一个进程的nice值为负数(高优先级),必须使用su命令登陆到root用户。下面是一些调整nice值的命令示例,</p>
<p>以nice值-5开始程序xyz</p>
<p>#nice –n -5 xyz</p>
<p>改变已经运行的程序的nice值</p>
<p>#renice level pid</p>
<p>将pid为2500的进程的nice值改为10</p>
<p>#renice 10 2500</p>
<p>** 僵尸进程<br />
当一个进程被结束,在它结束之前通常需要用一些时间去完成所有的任务(比如关闭打开的文件),在一个很短的时间里,这个进程的状态为僵尸状态。在进程完成所有关闭任务之后,会向父进程提交它关闭的信息。有些情况下,一个僵尸进程不能关闭它自己,这时这个进程状态就为z(zombie)。不能使用kill命令杀死僵尸进程,因为它已经标志为“dead”。如果你无法摆脱一个僵尸进程,你可以杀死它的父进程,这个僵尸进程也就消失了。然而,如果父进程是init进程,你不能杀死init进程,因为init是一个重要的系统进程,这种情况下你只能通过一次重新启动服务器来摆脱僵尸进程。也必须分析应用为什么会导致僵死?</p>
<ul>
<li>iostat</li>
</ul>
<p>iostat是sysstat包的一部分。Iostat显示自系统启动后的平均CPU时间(与uptime类似),它也可以显示磁盘子系统的使用情况,iostat可以用来监测CPU利用率和磁盘利用率。<br />
<a href="http://www.linuxfly.org/attachment/1169008526_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008526_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a></p>
<p>CPU利用率分四个部分:</p>
<div class="highlighter-rouge"><pre class="highlight"><code>%user:user level(应用)的CPU占用率情况
%nice:加入nice优先级的user level的CPU占用率情况
%sys:system level(内核)的CPU占用情况
%idle:空闲的CPU资源情况
</code></pre>
</div>
<p>磁盘占用率有下面几个部分:</p>
<div class="highlighter-rouge"><pre class="highlight"><code>Device:块设备名
Tps:设备每秒进行传输的数量(每秒的I/O请求)。多个单独的I/O请求可以被组成一个传输操作,因为一个传输操作可以是不同的容量。
Blk_read/s, Blk_wrtn/s:该设备每秒读写的块的数量。块可能为不同的容量。
Blk_read, Blk_wrtn:自系统启动以来读写的块设备的总量。
</code></pre>
</div>
<p>块的大小<br />
块可能为不同的容量。块的大小一般为1024、2048、4048byte。可通过tune2fs或dumpe2fs获得:<br />
<code class="highlighter-rouge">bash
[root@rfgz ~]# tune2fs -l /dev/hda1|grep 'Block size'
Block size: 4096
[root@rfgz ~]# dumpe2fs -h /dev/hda1|grep 'Block size'
dumpe2fs 1.35 (28-Feb-2004)
Block size: 4096
</code></p>
<ul>
<li>Vmstat<br />
Vmstat命令提供了对进程、内存、页面I/O块和CPU等信息的监控,vmstat可以显示检测结果的平均值或者取样值,取样模式可以提供一个取样时间段内不同频率的监测结果。<br />
<a href="http://www.linuxfly.org/attachment/1169008594_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008594_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a></li>
</ul>
<p>注:在取样模式中需要考虑在数据收集中可能出现的误差,将取样频率设为比较低的值可以尽可能的减小误差的影响。<br />
下面介绍一下各列的含义</p>
<div class="highlighter-rouge"><pre class="highlight"><code>·process(procs)
r:等待运行时间的进程数量
b:处在不可中断睡眠状态的进程
w:被交换出去但是仍然可以运行的进程,这个值是计算出来的
·memoryswpd:虚拟内存的数量
free:空闲内存的数量
buff:用做缓冲区的内存数量
·swap
si:从硬盘交换来的数量
so:交换到硬盘去的数量
·IO
bi:向一个块设备输出的块数量
bo:从一个块设备接受的块数量
·system
in:每秒发生的中断数量, 包括时钟
cs:每秒发生的context switches的数量
·cpu(整个cpu运行时间的百分比)
us:非内核代码运行的时间(用户时间,包括nice时间)
sy:内核代码运行的时间(系统时间)
id:空闲时间,在Linux 2.5.41之前的内核版本中,这个值包括I/O等待时间;
wa:等待I/O操作的时间,在Linux 2.5.41之前的内核版本中这个值为0
</code></pre>
</div>
<p>Vmstat命令提供了大量的附加参数,下面列举几个十分有用的参数:</p>
<div class="highlighter-rouge"><pre class="highlight"><code>·m:显示内核的内存利用率
·a:显示内存页面信息,包括活跃和不活跃的内存页面
·n:显示报头行,这个参数在使用取样模式并将命令结果输出到一个文件时非常有用。例如root#vmstat –n 2 10以2秒的频率显示10输出结果
·当使用-p {分区}时,vmstat提供对I/O结果的统计
</code></pre>
</div>
<p><a href="http://www.linuxfly.org/attachment/1169008668_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008668_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
<a href="http://www.linuxfly.org/attachment/1169008747_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008747_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a></p>
<ul>
<li>ps和pstree</li>
</ul>
<p>ps 和pstree命令是系统分析最常用的基本命令,ps命令提供了一个正在运行的进程的列表,列出进程的数量取决于命令所附加的参数。例如ps –A 命令列出所有进程和它们相应的进程ID(PID),进程的PID是使用其他一些工具之前所必须了解的,例如pmap或者renice。<br />
在运行java应用的系统上,ps –A 命令的输出很容易就会超过屏幕的显示范围,这样就很难得到所有进程的完整信息。这时,使用pstree命令可以以树状结构来显示所有的进程信息并且可以整合子进程的信息。Pstree命令对分析进程的来源十分有用。<br />
<a href="http://www.linuxfly.org/attachment/1169008793_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008793_0.jpg" border="0" alt="点击在新窗口中浏览此图片" /></a></p>
<ul>
<li>Numastat</li>
</ul>
<p>随着NUMA架构的不断发展,例如eServer xSeries 445及其后续产品eServer xSeries 460,现在NUMA架构已经成为了企业级数据中心的主流。然而,NUMA架构在性能调优方面面临了新的挑战,例如内存分配的问题在NUMA系统之前并没人感兴趣,而Numastat命令提供了一个监测NUMA架构的工具。Numastat命令提供了本地内存与远程内存使用情况的对比和各个节点的内存使用情况。Numa_miss列显示分配失败的本地内存,numa_foreign列显示分配远程内存(访问速度慢)信息,过多的调用远程内存将增加系统的延迟从而影响整个系统的性能。使运行在一个节点上的进程都访问本地内存将极大的改善系统的性能。<br />
<a href="http://www.linuxfly.org/attachment/1169008814_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008814_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a></p>
<ul>
<li>sar</li>
</ul>
<p>sar程序也是sysstat安装包的一部分。sar命令用于收集、报告和保存系统的信息。Sar命令由三个应用组成:sar,用与显示数据;sa1和sa2,用于收集和存储数据。默认情况下,系统会在crontab中加入自动收集和分析的操作:</p>
<div class="highlighter-rouge"><pre class="highlight"><code><span class="o">[</span>root@rfgz ~]# cat /etc/cron.d/sysstat
<span class="c"># run system activity accounting tool every 10 minutes</span>
<span class="k">*</span>/10 <span class="k">*</span> <span class="k">*</span> <span class="k">*</span> <span class="k">*</span> root /usr/lib/sa/sa1 1 1
<span class="c"># generate a daily summary of process accounting at 23:53</span>
53 23 <span class="k">*</span> <span class="k">*</span> <span class="k">*</span> root /usr/lib/sa/sa2 -A
</code></pre>
</div>
<p>sar命令所生成的数据保存在/var/log/sa/目录下,数据按照时间保存,可以根据时间来查询相应的性能数据。<br />
你也可以使用sar在命令行下得到一个实时的执行结果,收集的数据可以包括CPU利用率、内存页面、网络I/O等等。下面的命令表示用sar执行5次,间隔时间为3秒:<br />
<a href="http://www.linuxfly.org/attachment/1169008875_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008875_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
八、free<br />
free命令显示系统的所有内存的使用情况,包括空闲内存、被使用的内存和交换内存空间。Free命令显示也包括一些内核使用的缓存和缓冲区的信息。<br />
当使用free命令的时候,需要记住linux的内存结构和虚拟内存的管理方法,比如空闲内存数量的限制,还有swap空间的使用并不标志一个内存瓶颈的出现。<br />
<a href="http://www.linuxfly.org/attachment/1169008909_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008909_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
Free命令有用的参数:</p>
<p>引用</p>
<p>·-b,-k,-m和-g分别按照bytes, kilobytes, megabytes, gigabytes显示结果。<br />
·-l区别显示low和high内存<br />
·-c {count}显示free输出的次数</p>
<p>九、Pmap<br />
pmap命令显示一个或者多个进程使用内存的数量,你可以用这个工具来确定服务器上哪个进程占用了过多的内存从而导致内存瓶颈。<br />
<a href="http://www.linuxfly.org/attachment/1169008975_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169008975_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a><br />
十、Strace<br />
strace截取和记录进程的系统调用信息,还包括进程接受的命令信号。这是一个有用的诊断和调试工具,系统管理员可以通过strace来解决程序上的问题。<br />
命令格式,需要指定需要监测的进程ID。这个多为开发人员使用。</p>
<p>strace -p <pid></pid></p>
<p>十一、ulimit<br />
可以通过ulimit来控制系统资源的使用。请看以前的日志:<a href="http://www.linuxfly.org/post/73.htm">使用ulimit和proc去调整系统参数</a><br />
十二、Mpstat<br />
mpstat命令也是sysstat包的一部分。Mpstat命令用于监测一个多CPU系统中每个可用CPU的情况。Mpstat命令可以显示每个CPU或者所有CPU的运行情况,同时也可以像vmstat命令那样使用参数进行一定频率的采样结果的监测。<br />
<a href="http://www.linuxfly.org/attachment/1169009042_0.jpg"><img title="点击在新窗口中浏览此图片" src="http://www.linuxfly.org/attachment/1169009042_0.jpg" border="0" alt="点击在新窗口中浏览此图片" width="500" /></a></p>
<p> </p>
<p> </p>
<p> </p>
<hr>
<div class="pagination">
<ul>
<li class="prev"><a href="/2009/11/03/zz-fuser-usage/" title="fuser命令(转)">← Previous</a></li>
<li><a href="/archive.html">Archive</a></li>
<li class="next"><a href="/2009/11/03/zz-three-ways-to-keep-process-running-in-the-background/" title="让进程在后台可靠运行的几种方法(转)">Next →</a></li>
</ul>
</div>
<hr>
<!-- JiaThis Button BEGIN -->
<div class="jiathis_style">
<span class="jiathis_txt">分享到:</span>
<a class="jiathis_button_tsina">新浪微博</a>
<a class="jiathis_button_weixin">微信</a>
<a class="jiathis_button_renren">人人网</a>
<a class="jiathis_button_ydnote">有道云笔记</a>
<a class="jiathis_button_gmail">Gmail邮箱</a>
<a class="jiathis_button_twitter">Twitter</a>
<a class="jiathis_button_googleplus">Google+</a>
<a class="jiathis_button_hi">百度空间</a>
<a class="jiathis_button_fb">Facebook</a>
<a class="jiathis_button_douban">豆瓣</a>
<a href="http://www.jiathis.com/share?uid=1589850" class="jiathis jiathis_txt jiathis_separator jtico jtico_jiathis" target="_blank">更多</a>
<a class="jiathis_counter_style"></a>
</div>
<script type="text/javascript" >
var jiathis_config={
data_track_clickback:true,
summary:"",
ralateuid:{
"tsina":"1035836154"
},
shortUrl:false,
hideMore:false
}
</script>
<script type="text/javascript" src="http://v3.jiathis.com/code/jia.js?uid=1589850" charset="utf-8"></script>
<!-- JiaThis Button END -->
<!-- UY BEGIN -->
<div id="uyan_frame"></div>
<script type="text/javascript" id="UYScript" src="http://v1.uyan.cc/js/iframe.js?UYUserId=1589850" async=""></script>
<!-- UY END -->
</div>
</div>
</div>
<div class="span4">
<div class="well sidebar-nav">
<ul id="relate_blog" class="nav nav-list">
<li class="nav-header">最近文章</li>
<li><a href="/2016/07/18/event-pattern/">山寨一个 Splunk 的事件模式功能</a></li>
<li><a href="/2016/07/07/hapi-auth/">hapi.js 框架的认证授权插件示例</a></li>
<li><a href="/2016/04/04/lucene-proximity-querystring/">Lucene 查询中的距离查询(proximity query)</a></li>
<li><a href="/2016/04/01/javaflamegraph/">用火焰图看 elasticsearch 的资源占用</a></li>
<li><a href="/2016/03/19/machine-vs-ops/">机器战胜人类了,伺候机器的运维呢?</a></li>
<li><a href="/2016/03/16/juttle-viz-intro/">juttle 可视化界面介绍</a></li>
<li><a href="/2016/03/16/juttle-intro/">juttle 介绍</a></li>
<li><a href="/2016/01/27/kibana-server-plugin-develop/">Kibana4 服务器端插件开发</a></li>
<li><a href="/2015/12/27/report-of-this-year/">2015 年度个人总结</a></li>
</ul>
</div>
<div class="well sidebar-nav">
<iframe width="100%" height="550" class="share_self" frameborder="0" scrolling="no" src="http://widget.weibo.com/weiboshow/index.php?language=&width=0&height=550&fansRow=1&ptype=1&speed=0&skin=2&isTitle=1&noborder=1&isWeibo=1&isFans=1&uid=1035836154&verifier=a26926d5&dpc=1"></iframe>
</div>
<div class="well sidebar-nav">
<div id="uyan_list_time_frame"></div>
<script type="text/javascript" id="UYScriptTime" src="http://v1.uyan.cc/js/iframe_time_list.js?UYUserId=1589850&rankType=time" async=""></script>
</div>
<div class="well sidebar-nav">
<ul id="linklists" class="nav nav-list">
<li class="nav-header">友情链接(英文)</li>
<li><a href="http://codeascraft.com/" title="Etsy 运维团队博客">Code as Craft</a></li>
<li><a href="http://devopsanywhere.blogspot.jp/" title="">devopsanywhere</a></li>
<li><a href="http://www.jedi.be/blog/" title="">Jong En Dynamische Informatica</a></li>
<li><a href="http://www.planetdevops.net/" title="">planetdevops</a></li>
<li><a href="http://www.kitchensoap.com/" title="《网站运维》作者,Etsy 运维">Kitchen Soap</a></li>
<li><a href="http://blog.johngoulah.com" title="Musings of linux, open source, cloud computing and systems">John Goulah</a></li>
<li><a href="http://serverfault.com/" title="stackexchange下属的系统工程师问答网站">serverfault</a></li>
<li><a href="http://www.thegeekstuff.com/" title="各种超酷Linux命令用法">TheGeekStuff</a></li>
<li><a href="http://neilb.org/" title="The good,the bad,and the beautiful">neilb</a></li>
<li><a href="http://www.reddit.com/r/perl/" title="">reddit perl 频道</a></li>
<li><a href="http://jpetazzo.github.io/" title="">~jpetazzo</a></li>
<li><a href="http://www.perfplanet.com/" title="News and views from the web performance blogosphere">Performance Planet</a></li>
<li><a href="http://cuddletech.com/blog/" title="Use UNIX or die">Cuddle Tech</a></li>
<li><a href="http://showmetheco.de/" title="Viacheslav Tykhanovskyi(PocketIO/Text::Haml)">No time to wait</a></li>
<li><a href="http://blog.dataloop.io/" title="A new SaaS monitoring tool for DevOps & Operations">Dataloop.IO</a></li>
<li><a href="http://www.ducea.com/" title="">MDLog:/sysadmin</a></li>
<li><a href="http://planeteria.org/perl6/" title="Perl6 文集">Planet Perl 6</a></li>
<li><a href="http://www.metaforsoftware.com/blog/" title="">metafor</a></li>
<li><a href="http://blog.kablamo.org/" title="Eric Johnson,一个游走在伦敦和北京的 Perler">kablamo</a></li>
<li><a href="http://aphyr.com/posts" title="call me maybe 吐槽系列">Aphyr</a></li>
</ul>
</div>
<div class="well sidebar-nav">
<ul id="linklists" class="nav nav-list">
<li class="nav-header">友情链接(中文)</li>
<li><a href="http://www.nginxs.com/" title="">eric</a></li>
<li><a href="http://www.hellodb.net/" title="Ali DBA 张瑞">Hello DBA</a></li>
<li><a href="http://blog.nosqlfan.com/" title="not only sql信息集散地">NoSQLfan</a></li>
<li><a href="http://ourmysql.com/" title="">OurMySQL</a></li>
<li><a href="http://timo.piqiu.me/" title="TIMO IS MY OASIS">Timo</a></li>
<li><a href="http://www.liurongxing.com/" title="">刘荣星</a></li>
<li><a href="http://www.cnadn.net/" title="F5工程师">应用交付学习之路</a></li>
<li><a href="http://scmbob.org/" title="杭州NSN工程师,shell高人~">扛一肩记忆</a></li>
<li><a href="http://www.php-oa.com/" title="音悦台技术经理">扶凯</a></li>
<li><a href="http://www.lark.net.cn/" title="王剑">lark's cloud</a></li>
<li><a href="http://log.heartoutside.com/" title="HeartOutSide">HeartOutside</a></li>
<li><a href="http://blog.liulantao.com/" title="刘兰涛">Lax</a></li>
<li><a href="http://niubie.me/" title="莫言">莫言</a></li>
<li><a href="http://noops.me/" title="小米运维部">NoOps</a></li>
<li><a href="http://www.searchtech.pro/" title="">云端分布式搜索技术</a></li>
<li><a href="http://www.usefulshare.com" title="当当网安全运维">UsefulShare</a></li>
<li><a href="http://junqili.com/" title="深入研究puppet">纸飞机</a></li>
<li><a href="http://www.chinaxing.org/" title="">ChinaXing</a></li>
<li><a href="http://bubbyroom.com/" title="守住每一天">Liuyu's blog</a></li>
<li><a href="http://blog.aka-cool.net/" title="">Aka.Why</a></li>
<li><a href="http://blog.l8ii.com/" title="刘侨">LairdNote</a></li>
<li><a href="http://flw.tools/" title="">flw的工具箱</a></li>
<li><a href="http://blog.mcshell.org/" title="">mcshell</a></li>
<li><a href="http://novoland.github.io/" title="">克鲁斯卡尔的博客</a></li>
</ul>
</div>
<div class="well sidebar-nav">
<ul id="booklists" class="nav nav-list">
<li class="nav-header">我写的技术书籍</li>
<li><a href='http://product.china-pub.com/3769604'><img src='http://images.china-pub.com/ebook3765001-3770000/3769604/shupi.jpg' border='0' alt='网站运维技术与实践'/></a></li>
<li><a href='http://product.china-pub.com/64005'><img src='http://images.china-pub.com/ebook60001-65000/64005/shupi.jpg' border='0' alt='ELK Stack权威指南'/></a></li>
<li class="nav-header">我参与翻译的技术书籍</li>
<li><a href='http://product.china-pub.com/4582714'><img src='http://images.china-pub.com/ebook4580001-4585000/4582714/shupi.jpg' border='0' alt='Puppet 实战手册'/></a></li>
</div>
</div>
</div> <!-- row -->
<footer>
<p>© 陈子 2015
with help from <a href="http://jekyllbootstrap.com" target="_blank" title="The Definitive Jekyll Blogging Framework">Jekyll Bootstrap</a>
and <a href="http://twitter.github.com/bootstrap/" target="_blank">Twitter Bootstrap</a>
</p>
</footer>
</div> <!-- /container -->
</body>
</html>