本人于2009年12月迁移至独立BLOG。
1、欢迎光临运维进行时,希望认识更多志向相同的朋友!
2、本站部分资源来源于网络,如有侵权请及时与我联系!
3、强烈建议使用Firefox、Opera、Safari及IE7以上的浏览器访问,以获得最佳浏览质量!
4、请勿发表与中华人民共和国法律、法规相抵触的言论,谢谢合作!
5、本人发布的文章与评论内容仅代表本人观点。
分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]
      同一个分析日志的awk脚本,在Centos、ubuntu操作系统运行效率存在巨大差异。即在ubuntu中只需1分钟,而在Centos中则需要20分钟。以下为我的排查步骤:
1、检查服务器内核版本
引用

      拿一台升级过最新Linux内核(2.6.32.3)的CentOS5.4服务器来测试,结果还是没有改善 。

2、检查内核ulimit参数
引用

      在Centos服务器调整所有ulimit参数与ubuntu系统一致,结果还是一样。

3、优化awk脚本
引用

      由于mawk与gawk部分语法上存在差异,如将转义符‘\’换成'\\',双引号换成单引号,依然没有效果。

4、检查gawk版本
引用

      检查两个系统的gawk版本,发现所有Centos版本默认自带的gawk都低于ubuntu系统自带的3.1.6,尝试在Centos服务器下载、安装源码gawk3.1.6,结果速度提升了20倍。测试结果如下:
       time /usr/local/bin/gawk -f test.awk access.log >"temp.txt"
       real    0m48.739s
       user    0m42.904s
       sys     0m5.389s
Tags: , ,

笔记:awk(二) 不指定

root , 2007/08/21 22:01 , SHELL , 评论(0) , 阅读(6389) , Via 本站原创
内置的字符窜函数
gsub(r,s)                                                                   在整个$0中用s替代r
gsub(r,s,t)                                                                 在整个t中用s替代r
index(s,t)                                                                   返回s中字符串t的第一位置
length(s)                                                                    返回s长度
match(s,r)                                                                  测试s中是否包含匹配r的字符串
split(s,a,fs)                                                                在fs上将s分成序列a
sub(s, )                                                                      用$0中最左边也是最长的字符串替代
subtr(s,p)                                                                  返回字符串s中从p开始的后缀部分
substr(s,p,n)                                                             返回字符串s中从p开始长度为n的后缀部分
Tags:
分页: 1/2 第一页 1 2 下页 最后页 [ 显示模式: 摘要 | 列表 ]