前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >网络子系统调优

网络子系统调优

原创
作者头像
乡村小男孩
修改2020-06-04 12:05:21
7580
修改2020-06-04 12:05:21
举报
文章被收录于专栏:老司机教您如何排除系统问题

iptraf 查看当前主机的各个网络设备的流量情况

安装:解压 ; ./Setup

使用:# iptraf -d eth0

netperf 基于c/s架构的带宽测试工具,能够测试出网络设备的带宽能去到多少。

使用:

服务端:需要测试带宽的一端:

# netserver

测试端:用于测试连接服务器能够达到最大的带宽

# netperf -H 10.1.1.22 -l 30

# netperf -H 10.1.1.22 -l 30

MIGRATED TCP STREAM TEST from 0.0.0.0 (0.0.0.0) port 0 AF_INET to 10.1.1.22 (10.1.1.22) port 0 AF_INET

Recv Send Send

Socket Socket Message Elapsed

Size Size Size Time Throughput

bytes bytes bytes secs. 10^6bits/sec

87380 16384 16384 30.05 90.92 <--- 百M网卡能达到90是非常不错。

实时查看网卡的流量

# sar -n DEV 2 5

例子:

# strace -vf -p pid

例子:压力测试lnmp,判断服务器在高并发的情况下,到底是最消耗哪种系统资源?有么有办法进行调优?

该服务器安装nginx+mysql+php,跑的应用是phpwind论坛

模拟并发10000-20000

# ulimit -SHn 65535

# ab -c 2000 -n 60000 http://10.1.1.22/read.php?tid=1

查看当前的并发连接数

http://10.1.1.22/status

结论:cpu成为瓶颈

php-cgi进程 32*10M ~= 350

nginx进程 2*20M ~= 40M

1、什么进程最活跃,消耗大量cpu <---php-cgi

用于编译php代码

解决:eAccelerator模块

2、前端增加squid作为静态元素的缓存。

静态元素的访问请求是有原始web服务的nginx来处理,所以增加squid只能起到很小的作用。

旧的常见的架构:

clients

|

squid <---启动缓存作用,只能针对文件服务器(附件服务)

|

nginx

缺点:所有动静请求都经过squid,squid会可能成为瓶颈。

不能缓存动态页面

如果强制缓存动态页面,会导致动页页面更新丢失,客户端看不到最新的页面。所以这种强制缓存只适合动态页面更新不频繁的文章系统。不适论坛。

或者使用动态页面静态化技术(只适合文章系统,不适合论坛)

新的架构

clients

|

nginx/haproxy <----调度

|

|-------------------|

nginx_web <-----> squid

3、针对nginx或者php-cgi进行调优,关闭不必要功能和模块,关闭不必要其他系统服务

考虑关闭压缩模块

如果非要压缩功能,一般也压缩:

txt,htm,html,css,js

不会去压缩: xml,rar,图片

如果服务器并发数太低,cpu还非常充裕:

允许nginx接受更多并发:

worker_connections 65535;

使用php-cgi进程自身的缓存功能

缺点:与强制打开squid动态页面缓存一样。

打开缓存 《--- 减少运算,减少IO

有缓存,就适当加大缓存

有队列,加大队列

如果cpu充裕,php-cgi返回503报错,可以打开更多的php-cgi进程

# vim /usr/local/etc/php-fpm.conf

<value name="max_children">32</value> // 内存超过4G,而且cpu充裕,可以64以上

<value name="rlimit_files">204800</value>

<value name="max_requests">65535</value>

备忘:

双网卡绑定

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档