nginx+fastcgi+php5fpm负载均衡

Nginx反向代理负载均衡架构图(三台服务器为例)

Nginx负载均衡(图示:192.168.1.1:80服务器配置)192.168.1.1:80虚拟主机角色

这里192.168.1.1:80虚拟主机基于nginx进行配置,这里主要的作用是webserver和负载均衡,接收客户端的请求,并且根据后端服务器的情况进行请求分发,实现负载均衡

upstream模块

nginx实现负载均衡模块主要利用了upstream模块,它提供了一个简单的方法将客户端的请求反向代理到后端服务器监听的虚拟主机上,实现负载均衡

server指令

语法:server_name [parameters]使用环境:upstream功能:该指令用户指定后端服务器名称和参数。服务器的名称具体指nginx或apache监听的虚拟主机,可以是域名、ip地址+端口号或unix socket参数:weight=[number]:设置服务器的权重,权重值越高,被分配到的客户端请求越多max_fail=[number]:在参数fail_timeout指定的时间内对后端服务器请求失败的次数。fail_timeout=[time]:在经历参数max_fail设置失败的次数后,暂停的时间down:标记服务器为永久离线状态backup:仅仅在非backup服务器全部宕机或繁忙的时候才启用upstream示例配置

upstream icontact_pool {server192.168.1.1:9000weight=5max_fails=3fail_timeout=20s;server192.168.1.2:9000weight=3max_fails=3fail_timeout=20s;server192.168.1.3:9000weight=2max_fails=3fail_timeout=20s;}ngxin虚拟主机负载均衡配置

server {listen192.168.1.1:80;server_name192.168.1.1;access_log/var/log/nginx/balance/loadbalance.access.log;error_log/var/log/nginx/balance/loadbalance.error.log;#允许列目录location / {root/balance/;autoindexon;autoindex_exact_sizeoff;autoindex_localtimeon;allow allow;}#proxy the php scripts to fpm_pool_upstreamlocation ~ \.php$ {root/balance;include/etc/nginx/fastcgi_params;#将webserver接收的客户端请求通过fastcgi负载均衡到php5-fpm的池fastcgi_passicontact_pool;}}

负载均衡服务器处理php请求

角色

192.168.1.1:9000、192.168.1.2:9000、192.168.1.3:9000为后端的三台负载均衡服务器监听的fpm地址和端口号,负载均衡服务器通过fastcgi将http请求和上下文参数发送给这个fpm池,然后fpm负责解析php程序

注意

三台服务器必须保证php的root目录有客户端需要的php文件,,否则会出现404错误!

版权声明:本文为博主原创文章,未经博主允许不得转载。

先知三日,富贵十年。

nginx+fastcgi+php5fpm负载均衡

相关文章:

你感兴趣的文章:

标签云: