Nginx集群配置

作者:夕阳小子
时间:2017-5-1
优化思路 :
Nginx 层面 :
解决 : nginx.conf 下面 : work_connection 加大
worker_connections 10240;
Worker_rlimit_nofiles 10000;
Keepalive_timeout 0;
系统层面
1: 内核层面 , 加大连接数 , 并加快 tcp 回收
2: mysql 层面 , 增大连接数
3: php 层面 , 用长连接 , 节省连接数
4: memcached 缓存 , 减轻 mysql 负担

A服务器:nginx
B服务器:mysql
C服务器:php-fpm进程服务器
D服务器:memcached服务器5-8个





A,B,C,D 四台服务器防火墙全部关掉 service iptables stop,防火墙用硬件防火墙
每台服务器都做以下优化:
系统内核层面 :
net.core.somaxconn = 4096 允许等待中的监听
net.ipv4.tcp_tw_recycle = 1 tcp 连接快速回收
net.ipv4.tcp_tw_reuse = 1 tcp 连接重用
net.ipv4.tcp_syncookies = 0 不抵御洪水攻击
ulimit -n 30000

安装php-fpm






php-fpm配置
分别增加5个php-fpm配置文件:php-fpm.conf php-fpm9001.conf php-fpm9002.conf php-fpm9003.conf php-fpm9004.conf
分别做一下配置,监听不同端口
Pm = static fpm 进程始终保持 , 不要动态生成
Pm.max_children= 32 始终保持的子进程数量
写一个shell脚本方便全部php-fpm进程

Nginx服务器
相关优化
Nginx 层面 :
解决 : nginx.conf 下面 : work_connection 加大
worker_connections 10240;
Worker_rlimit_nofiles 10000;
Keepalive_timeout 0;


memcahced服务器
安装
1. 查找Memcached
yum search memcached
首先检查yum软件仓库中是否存在memcached,如果有 直接进入第3步安装即可,否则执行第2步。
2. 安装第三方软件库(可选)
标准的CentOS5软件仓库里面是没有memcache相应的包的,所以,我们的第一步就是导入第三方软件仓库,这里推荐的是RpmForge(RpmForge库现在已经拥有超过10000种的CentOS的软件包,被CentOS社区认为是最安全也是最稳定的一个第三方软件库),安装方法如下:
wget http://dag.wieers.com/rpm/packages/rpmforge-release/rpmforge-release-0.5.2-2.rf.src.rpm
rpm -ivh rpmforge-release-0.5.2-2.rf.src.rpm
3.安装Memcached
yum -y install memcached
4.验证安装
memcached -h
/etc/rc.d/init.d/memcached status
5. 查看配置文件
cat /etc/sysconfig/memcached
可以根据情况修改相关配置参数:
PORT="11211"USER="memcached"MAXCONN="1024"CACHESIZE="64"OPTIONS=""
6.启动memcached
/etc/rc.d/init.d/memcached start

nginx 配置


Mysql服务器
数据准备:
大概12w的数据

代码准备:bench.php



接下来进行压力测试
分别用两台服务的apache ab压力测试工具进行测试:目标是3000个并发,50w个请求
时时观测:status



测试结果:80%-90%响应在3-8秒之间,整个nginx集群负载还是很不错的;仅仅是做了简单的压力测试,在实际的业务场景中,还需要具体的问题分析,找到问题所在,看是服务器瓶颈还是系统瓶颈,或者是软件(nginx,mysql,php....),再进行相关的优化,把最快的响应给用户,就是我们的目标。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值