忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
12下一页
最近访问板块 发新帖
查看: 58593 | 回复: 11

【好书推荐】实战揭秘:linux服务器性能调优 [复制链接]

论坛徽章:
138
2015年亚洲杯之日本
日期:2015-04-28 13:32:012015年亚洲杯之朝鲜
日期:2015-05-06 10:16:442015年亚洲杯之日本
日期:2015-05-06 10:21:342015年亚洲杯纪念徽章
日期:2015-05-13 17:16:442015亚冠之北京国安
日期:2015-05-13 17:18:292015亚冠之鹿岛鹿角
日期:2015-05-13 17:19:062015亚冠之德黑兰石油
日期:2015-05-27 16:47:402015亚冠之塔什干棉农
日期:2015-05-28 15:24:122015亚冠之卡尔希纳萨夫
日期:2015-06-01 13:52:392015亚冠之柏斯波利斯
日期:2015-06-04 17:37:292015亚冠之阿尔纳斯尔
日期:2015-06-16 11:31:202015亚冠之塔什干火车头
日期:2015-06-23 10:12:33
发表于 2018-01-24 15:16 |显示全部楼层
本期获奖的五位小伙伴为:aloki  Purple_Grape  shang2010  Fl_wolf fenyun689恭喜~



话题背景:
在过去的这些年里,Linux渗透进了许多公司的数据中心,并且在科学界和商业界都大受欢迎。今天,Linux已经是最通用的操作系统,Linux无处不在,如防火墙、电话和大型机。
自然的,Linux操作系统的性能问题成为了各类用户关注一个热点。
但是,在不同场景下对操作系统的要求是不一样的,譬如用作天气计算和运行数据库的需求就完全不同,这就要求Linux在所有可能的场景中都表现出卓越性能。

讨论问题:
1、 业务实战过程中,影响Linux服务器性能的因素有哪些?
2、在linux性能调优过程中,有哪些 监控和测试工具?性能分析存在哪些瓶颈?请结合贵公司的业务进行简述。
3、在Linux服务器性能调优中,您有哪些实战技巧?


讨论时间:2018年1月24日-2月13日

活动奖励:
活动结束后,我们将选取5位讨论精彩的同学,各送《构建高可用Linux服务器(第4版)》。

作者: 余洪春   
丛书名: Linux/Unix技术丛书
出版社:机械工业出版社
ISBN:9787111582953
上架时间:2017-11-3
出版日期:2018 年1月
开本:16开
版次:4-1
所属分类:计算机 > 操作系统 > Linux

购书链接:https://item.jd.com/12267548.html

内容简介:本书第4版相对于前3版而言改动比较大,删除了不少内容过时的内容,增补了当前热门的技术知识点。另外,本书除了项目部署时采用的系统没有升级到CentOS6.8x86_64外,其他环境均为CentOS6.8x86_64。此外,在写作过程中采纳了读者针对上一版本提出的许多意见和建议,同时修正了第3版的各种错误及其他问题。具体改动如下:删除了第3版中前3章的内容,增补了Vagrant虚拟化软件的应用,并且重写了生产环境下的Shell脚本;删除了对分布式自动化部署管理工具Puppet的相关介绍,改用了Fabric自动化运维工具;删除了关于开源VPN在企业中部署的章节。附录部分增加了对现在流行的GitLab应用,以及强大的编辑工具SulbimeText3的快捷键方式操作的介绍。

样章试读: 文前-1-3.pdf (2 MB, 下载次数: 37)

论坛徽章:
39
水瓶座
日期:2013-08-15 11:26:422015年辞旧岁徽章
日期:2015-03-03 16:54:152015年亚洲杯之乌兹别克斯坦
日期:2015-03-27 14:01:172015年亚洲杯之约旦
日期:2015-03-31 15:06:442015亚冠之首尔
日期:2015-06-16 23:24:37IT运维版块每日发帖之星
日期:2015-07-01 22:20:002015亚冠之德黑兰石油
日期:2015-07-08 09:32:07IT运维版块每日发帖之星
日期:2015-08-29 06:20:00IT运维版块每日发帖之星
日期:2015-08-29 06:20:00IT运维版块每日发帖之星
日期:2015-10-10 06:20:00IT运维版块每日发帖之星
日期:2015-10-11 06:20:00IT运维版块每日发帖之星
日期:2015-11-10 06:20:00
发表于 2018-01-25 21:59 |显示全部楼层
很感兴趣 阅读下

论坛徽章:
1
2017金鸡报晓
日期:2017-01-10 15:13:29
发表于 2018-01-26 17:02 |显示全部楼层
1、业务实战过程中,影响Linux服务器性能的因素有哪些?
答:影响Linux服务器性能的因素有:
①CPU:CPU是操作系统稳定运行的根本,CPU的速度与性能在很大程度上决定了系统整体的性能,CPU是十分关键的资源,也常常是性能瓶颈的源头。需要明白的是,高的CPU利用率并不总是意味着CPU正在繁忙的工作;也可能是正在等着其它子系统完成工作。正确的判断,需要把整个系统作为一个整体,并且观察到每一个子系统,因为子系统可能存在关联的反应。

②内存:内存的大小也是影响Linux性能的一个重要的因素,内存太小,系统进程将被阻塞,应用也将变得缓慢,甚至失去响应;内存太大,导致资源浪费。 可能出现内存性能瓶颈的应用有打印服务器、数据库服务器、静态Web服务器等,对于这类应用要把内存大小放在主要位置。

③磁盘I/O性能:磁盘子系统通常是服务器性能的最重要方面,是瓶颈问题的高发部件。但是,磁盘问题表现的有时候并不是那么直接,比如说可能是内存不足。如果CPU周期浪费在等待I/O任务完成,应用程序可能被认为是I/O密集型。

④网络带宽:Linux运行的各个应用程序,一般需要依靠网络进行数据交互。如果网络带宽不够或网络不稳定,会影响应用程序运行的结果,严重时会使应用程序出现错误甚至崩溃。

⑤系统安装:操作系统优化要从操作系统的安装开始。安装操作系统时,磁盘分区的划分,包括Boot分区、根分区、SWAP分区,都直接影响系统的运行性能。

⑥内核参数:操作系统安装完毕后,就要对系统内核参数进行配置,达到优化的效果。不过内核参数的优化要系统中运行的应用程序结合起来进行配置。

⑦文件系统:文件系统也是影响服务器性能的重点。不同的文件系统有各自的特性,管理员应该根据不同的需求,选择合适的文件系统。


2、在linux性能调优过程中,有哪些监控和测试工具?性能分析存在哪些瓶颈?请结合贵公司的业务进行简述。
答:在linux性能调优过程中,可以用uptime命令评估系统整体性能,用vmstat命令、sar命令监控系统CPU,用free命令、vmstat命令监控内存,用iosta命令、sar命令评估磁盘性能,用ping命令、netstat命令、iperf命令、netperf命令监控网络性能。
性能分析存在瓶颈包括CPU瓶颈、内存瓶颈、磁盘I/O瓶颈和网络带宽瓶颈。
①CPU瓶颈:有好几种办法可以确认瓶颈出现在CPU上。Linux有各类工具来帮助我们,关键是选择什么工具。可以使用uptime命令,通过分析其输出,可以粗略知道在过去15分钟里,服务器上发生了什么。使用top工具可以看到CPU利用率和哪个进程是消耗CPU的大户。如果设置了sar,会收集到很多信息,比如一段时间内的CPU利用率。分析这些信息的办法可能不同,使用isag,可以对sar的输出画出图形。你还可以通过脚本和表格来分析信息,看看CPU利用率的走向。你也可以在命令行使用sar -u或者sar -U processornumber。要想获得系统更全面情况,而不只是CPU子系统,vmstat是个好帮手。

②内存瓶颈:要找到内存瓶颈,可以从列出在服务器上运行的应用开始分析。看看每个程序用了多少物理内存和swap空间。用free、vmstat检测是否是内存瓶颈。使用free -l -t -o来查看额外信息。有两类页错误(Page faults):软页错误,在内存中发现页;硬页错误,在内存中没有发现页,而必须从磁盘中获取。访问磁盘会显著的使应用变慢。sar -B命令可以提供观察页错误的信息。

③磁盘I/O瓶颈:分析磁盘瓶颈的办法就实时监控和跟踪。跟踪磁盘的一种办法是使用vmstat工具。vmstat中关于I/O最重要的列是bi和bo。这两个字段监控了各个时刻进出磁盘的块。设置了基线就可以找到随着时间的变化。在反复同时打开、读、写、关闭太多文件的时候可能遇到性能问题。使用iostat工具,可以监控I/O设备的实时负载。不同的选项可以帮你挖掘到更深更多有用的数据。

④网络带宽瓶颈:测试网络性能的第一步是确定网络是否正常工作,最简单的方法就是使用ping命令。iperf是一个基于TCP/IP和UDP/IP性能测试工具,能够提供网络吞吐率信息,以及震动、丢包率、最大组和最大传输单元大小等统计信息,可以由这些信息来分析网络的通信性能、定位网络瓶颈。netperf是一种网络性能测量工具,主要针对基于TCP或UDP的传输。netperf根据应用的不同,可以进行不同模式的网络性能测试,即批量数据传输(bulk data transfer)模式和请求/应答(request/response)模式。netperf反应的是一个系统能以多快的速度向另一个系统发送数据,以及另一个系统能以多快的速度接受数据。


3、在Linux服务器性能调优中,您有哪些实战技巧?
答:Linux服务器性能调优的步骤如下:
①了解你的系统,根据当前服务器性能表现,设立基准线,用来和未来的测试数据做比较,找出性能瓶颈。
②备份系统
③监控和分析系统性能
④缩小瓶颈范围,找到原因
⑤通过修改一个因素,修复瓶颈
⑥回到第3步,直到系统性能恢复到正常水平
在这个过程中应该记录下每一步,尤其是你的修改,以及对性能的影响。

在尝试修复性能问题的时候,注意:
·应用程序应该用适当的方法来编译,减少路径长度。
·在做任何升级和修改之前做性能衡量,这样就可以知道修改是否有用。
·除了检查新添加的硬件,还要检查重新配置过的旧硬件。

论坛徽章:
5
技术图书徽章
日期:2013-08-27 10:03:49CU大牛徽章
日期:2013-09-18 15:16:55CU大牛徽章
日期:2013-09-18 15:18:22CU大牛徽章
日期:2013-09-18 15:18:43技术图书徽章
日期:2014-04-24 15:51:26
发表于 2018-01-30 16:31 |显示全部楼层
性能监控很重要,有瓶颈时能及时发现,这个通常比性能优化更重要。

评分

参与人数 1信誉积分 +5 收起 理由
shang2010 + 5 赞一个!

查看全部评分

论坛徽章:
26
IT运维版块每日发帖之星
日期:2016-04-01 06:20:0015-16赛季CBA联赛之福建
日期:2016-07-18 09:10:1715-16赛季CBA联赛之广东
日期:2016-07-25 18:17:09C
日期:2016-10-25 16:10:552017金鸡报晓
日期:2017-02-08 10:39:4215-16赛季CBA联赛之同曦
日期:2017-02-11 13:43:1415-16赛季CBA联赛之同曦
日期:2017-05-13 19:24:3815-16赛季CBA联赛之上海
日期:2017-07-19 17:38:4415-16赛季CBA联赛之福建
日期:2017-08-02 09:45:3315-16赛季CBA联赛之山东
日期:2017-08-23 17:34:3615-16赛季CBA联赛之上海
日期:2017-11-14 09:20:5015-16赛季CBA联赛之佛山
日期:2017-12-01 10:26:38
发表于 2018-02-02 15:12 |显示全部楼层
1、 业务实战过程中,影响Linux服务器性能的因素有哪些?
主要有操作系统,CPU,内存,磁盘I/O带宽,网络I/O带宽,应用程序。

2、在linux性能调优过程中,有哪些 监控和测试工具?性能分析存在哪些瓶颈?请结合贵公司的业务进行简述。
常用的命令有Vmstat、sar、iostat、netstat、free、ps、top。有硬件瓶颈,网络瓶颈,操作系统瓶颈。

3、在Linux服务器性能调优中,您有哪些实战技巧?
找出服务器的瓶颈,进行优化。

论坛徽章:
130
操作系统版块每日发帖之星
日期:2016-05-11 17:06:57操作系统版块每日发帖之星
日期:2016-05-11 17:06:57数据库技术版块每日发帖之星
日期:2016-05-11 17:07:05操作系统版块每日发帖之星
日期:2016-05-11 17:06:57操作系统版块每日发帖之星
日期:2016-05-11 17:06:57综合交流区版块每日发帖之星
日期:2016-05-11 17:07:052022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:57IT运维版块每日发帖之星
日期:2016-05-11 17:06:49操作系统版块每日发帖之星
日期:2016-05-11 17:06:57综合交流区版块每日发帖之星
日期:2016-05-11 17:07:05操作系统版块每日发帖之星
日期:2016-05-11 17:06:57程序设计版块每日发帖之星
日期:2016-05-11 17:06:57
发表于 2018-02-02 19:21 |显示全部楼层
对计算机程序而言,算法和数据结构才是性能的灵魂,难道各位平时工作都很少涉及么

论坛徽章:
130
操作系统版块每日发帖之星
日期:2016-05-11 17:06:57操作系统版块每日发帖之星
日期:2016-05-11 17:06:57数据库技术版块每日发帖之星
日期:2016-05-11 17:07:05操作系统版块每日发帖之星
日期:2016-05-11 17:06:57操作系统版块每日发帖之星
日期:2016-05-11 17:06:57综合交流区版块每日发帖之星
日期:2016-05-11 17:07:052022北京冬奥会纪念版徽章
日期:2015-08-07 17:10:57IT运维版块每日发帖之星
日期:2016-05-11 17:06:49操作系统版块每日发帖之星
日期:2016-05-11 17:06:57综合交流区版块每日发帖之星
日期:2016-05-11 17:07:05操作系统版块每日发帖之星
日期:2016-05-11 17:06:57程序设计版块每日发帖之星
日期:2016-05-11 17:06:57
发表于 2018-02-02 19:40 |显示全部楼层
⑤系统安装:操作系统优化要从操作系统的安装开始。安装操作系统时,磁盘分区的划分,包括Boot分区、根分区、SWAP分区,都直接影响系统的运行性能。


——现在还回答这些,也太笼统了吧。不会是从以前资料上抄的吧

论坛徽章:
4
IT运维版块每日发帖之星
日期:2015-08-25 06:20:002017金鸡报晓
日期:2017-01-10 15:13:292017金鸡报晓
日期:2017-02-08 10:33:2115-16赛季CBA联赛之新疆
日期:2018-04-23 13:55:23
发表于 2018-02-06 15:35 |显示全部楼层
1、 业务实战过程中,影响Linux服务器性能的因素有哪些?cpu使用率内存使用率流出流量流入流量磁盘读取磁盘写入io_wait核心要数就这几个了




2、在linux性能调优过程中,有哪些 监控和测试工具?性能分析存在哪些瓶颈?请结合贵公司的业务进行简述。
监控工具用的最多肯定是 zabbix 啦,测试工具直接用python写的就好了。  
瓶颈  上面那几项都会成为瓶颈,
公司业务的话 程序写的内存释放不够,导致内存吃满的情况

3、在Linux服务器性能调优中,您有哪些实战技巧?

实战技巧,要去试才知道。。别纸上谈兵、。

论坛徽章:
1
2017金鸡报晓
日期:2017-01-10 15:13:29
发表于 2018-02-06 21:47 |显示全部楼层
shang2010 发表于 2018-02-02 19:40
⑤系统安装:操作系统优化要从操作系统的安装开始。安装操作系统时,磁盘分区的划分,包括Boot分区、根分 ...

感谢你的认真阅读

不同的应用服务器,作用不同,分区也不同,不可能千篇一律。此外服务器本身的硬件配置不同,也影响着磁盘的分区。

论坛徽章:
0
发表于 2018-02-07 10:38 |显示全部楼层
回复 1# 王楠w_n


1、 业务实战过程中,影响Linux服务器性能的因素有哪些?

作为一个物理整体,无非是这些东西组成,底层的操作系统,CPU,内存,磁盘I/O情况以及现场的网络I/O带宽情况

上层就是应用程序本身了,其中应用程序我认为是关系是最大的,应用代码本身写得水平如何使影响性能的最大因素。


2、在linux性能调优过程中,有哪些 监控和测试工具?

目前作为开源的Llinux系统本身已经自带了很多的性能监控和测试工具,

常用的命令有Vmstat、sar、iostat、netstat、free、ps、top。

性能分析存在哪些瓶颈?请结合贵公司的业务进行简述。

性能如果存在瓶颈,最直观的感受当然是客户了,表现出来的是系统反应很慢或者直接卡死。这个时候就要分析服务器的问题了。

之前有个Mysql数据库的应用,发现服务器上有MYSQL进程使用CPU占用100%,导致应用返回很慢, 延时很大。后来发现是有一个sql语句

逻辑是根据一个字段的查询count总数,而且count里包含了substr函数,字段本身是一个存储图片的URL地址的。长度在200个字符左右,表的数据量在784万。可想而知要消耗多少CPU资源。

3、在Linux服务器性能调优中,您有哪些实战技巧?
在一个MPP的分布式数据库环境中,遇到过Huge的问题。技巧谈不上,主要对数据库相关的服务器比较了解。对Linux还不是很精通。


您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP