2

服务器性能工具箱 (1)- 网络带宽

 2 years ago
source link: https://rosona.github.io/post/20151227/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

服务器性能工具箱 (1)- 网络带宽

Peng Rong, 2015-12-27

工欲善其事必先利其器,服务器端性能工具箱从“器”出发,本系列文章介绍我遇到的听到的一些关于性能优化的故事

有时候客户端出现访问慢无法访问偶尔无法打开,有很大的延迟丢包现象,我们查遍了服务器端组件,web service,database,服务器负载,问题仍没有解决,这时候你可能需要考虑一下网络带宽 ​ 怎么查看你的带宽是否有问题,介绍两个网络带宽相关的工具:nload,ethstatus,下面以nload为例,ethstatus安装及使用方式可以自行搜索

在Ubuntu下安装非常简单:sudo apt-get install nload 安装后使用:nload eth1,eth1为你想检测的网络接口,会出现如下图:

nload example

上面是所监测接口进入的流量,下面是所监测接口出去的流量,用#现实的流量图会实时变化,有当前流量,平均流量,最小流量,最大流量,综合流量 和从服务商协议流量做对比,如果已经达到的最大值,需要关注了

确定是流量问题后,接下来需要看是什么导致流量增加了,有几种情况: 正常的业务增长,这是好事! 是否上了耗费流量的业务?服务器上host了image service?有一个推广的视频?如果是,可以考虑CDN等 静态资源版本使用问题?我们产品最初遇到过每一次版本升级后流量规律性的有一个峰值,由于静态资源(js等)版本未正确使用,每次升级都重新获取所有资源,集中的升级导致流量激增 DDOS?你摊上事儿了,准备接招吧,留意邮件!(后面我们会有一遍文章单独分析)

如果确定是业务增长所致,那真是快乐的事情,赶紧增加带宽吧,其它情况如果不能尽快解决,建议先增加带宽,保证用户体验,然后尽快真对具体问题做优化处理

当然,现在我们一般都使用云服务,比如aws,aliyun等,云服务会提供非常详细的带宽分析图,比如aws的CloudWatch,可以配合nload使用(并不是每一个dev都有console管理权限)。国内aliyun是预付费,带宽有按需(用多少付多少)也有固定带宽,一般我们都是选择固定带宽,避免高额费用产生(国内的带宽费用非常昂贵),aws的带宽是按需使用

除了云服务商提供的简单的带宽分析之外,我们要想对业务全面了如指掌,需要对服务的VPC做更加详细的监控,了解出入口流量,业务模块间的数据流动很重要,这时候我们可以使用第三方的监控工具协助,比如zabbix,具体怎么使用自行解决,此处不做描述

清楚了VPC内部及外部的流量情况以及支撑的最大值,我们就能针对实际的业务模块做调整及优化

后面我会持续更新性能工具箱,一次专注描述一个点,请保持关注

大白鲸 干货不断 值得关注

微信号:belugas

微信公众号


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK