Nginx中upstream模块实现PHP服务器的负载均衡
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx中upstream模块实现PHP服务器的负载均衡相关的知识,希望对你有一定的参考价值。
nginx中upstream模块实现php服务器的负载均衡
upstream模块介绍
Nginx 的负载均衡功能依赖于 ngx_http_upstream_module 模块,所支持的代理方式包括 proxy_pass 、fastcgi_pass 、memcached_pass 。upstream 是nginx作为代理及缓存的核心结构并且请求上游发送至下游都能由相关联的模块进行干预处理。
试验环境
Nginx服务器IP:192.168.58.134
PHP服务器1IP:192.168.58.132
PHP服务器2IP:192.168.58.130
实验搭建
配置Nginx服务器
首先搭建Nginx服务器,在上一篇博客中,Nginx服务器已经搭建好,这里我们需要修改Nginx.conf文件,在里面启用upstream模块,对于PHP服务器池进行配置,实现其负载均衡。
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf
#gzip on;
upstream php { #定义定义php服务器池,权重都为1,相当于访问模式是轮询
server 192.168.58.132:9000 weight=1;
server 192.168.58.130:9000 weight=1;
}
server {
listen 80;
server_name localhost;
location ~ .php$ {
root /var/www/html/webphp; #两台php服务器中都必须要有这个目录,里面有不同的index.php文件
fastcgi_pass php; #这里要修改为php服务器池,而不是单个服务器
fastcgi_index index.php;
include fastcgi.conf;
}
[[email protected] ~]# service nginx stop
[[email protected] ~]# service nginx start
#重启Nginx服务
配置PHP服务器
两台php服务器一样配置,在上一篇博客中也有详细配置。然后都要启用php-fpm,查看启动正常。
测试
我们访问192.168.58.134/index.php可以看到两个php服务器轮流进行访问,最终实现了负载均衡。
以上是关于Nginx中upstream模块实现PHP服务器的负载均衡的主要内容,如果未能解决你的问题,请参考以下文章