2012.09.13_使用多 fastcgi 进行 php 负载均衡
来源:互联网 发布:开源 微信公众号 php 编辑:程序博客网 时间:2024/05/16 17:41
http://www.phpabc.cn/shi-yong-duo-fastcgi-jin-xing-php-fu-zai-jun-heng.html
服务器三台,都具有两块网卡,分别为A、B、C,内网IP地址分别是192.168.0.1,192.168.0.2,192.168.0.3。A运行Nginx作为前端,B、C主要分担运算压力。
数据库部分不予考虑。
系统: CentOS 5.5 64位
Nginx:0.6以后的所有版本都适用。
PHP: 版本5.2.14,使用同一份编译,分别复制到每台服务器上。
网站目录:/www/lcuc/web
一、修改fpm配置
默认情况下fpm监听在 127.0.0.1:9000 并且只允许来自本机的连接。为了能让其它机器访问,需要修改 php-fpm.conf中的配置。
<value name="listen_address">192.168.0.2:9000</value>修改监听端口,注意这里要修改为每台服务器内网IP。
<value name="allowed_clients">192.168.0.1,192.168.0.2,192.168.0.3</value>
允许调用的服务器ip,使用英文逗号隔开。
然后重启php-fpm。
二、同步php文件
fastcgi负载均衡的时候每次执行的php只能是本地的,所以务必保存程序放置的路径,权限等要一致。
可以使用自己的方法进行同步,rsync、NFS、samba选择合适自己的行。
我使用的是NFS方案,文件集中存储。还可以把session放在NFS上,实现session共享。
三、配置nginx
在http段加入,如果机器性能不均衡可以调整weight,数值越大,分配的请求越多。
upstream fastcgi {server 192.168.0.1:9000 weight=1;server 192.168.0.2:9000 weight=2;server 192.168.0.3:9000 weight=2;}
虚拟机设置部分注意/www/lcuc/web这个地址其实是替换的变量$document_root,需要替换为实际地址,
location ~ .*\.php$ {fastcgi_pass fastcgi;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /www/lcuc/web$fastcgi_script_name;include fastcgi.conf;}
OK,搞定,重启nginx生效。
- 2012.09.13_使用多 fastcgi 进行 php 负载均衡
- 使用nginx配置多个php fastcgi负载均衡
- 使用nginx配置多个php fastcgi负载均衡
- 使用nginx配置多个php-fastcgi负载均衡
- 使用nginx配置多个php fastcgi负载均衡
- 使用nginx配置多个php-fastcgi负载均衡
- Nginx+多个fastcgi实现负载均衡
- nginx+fastcgi+php5fpm负载均衡
- 使用反向代理服务器进行负载均衡
- PHP负载均衡指南
- PHP负载均衡指南
- PHP负载均衡指南
- PHP 负载均衡指南
- PHP负载均衡指南
- PHP负载均衡指南
- PHP负载均衡指南
- PHP负载均衡
- PHP负载均衡指南
- linux下取消页读写保护
- Php 体系结构及其执行概述
- Begin~
- MCV模式
- windows下信号量和共享内存api, mark:共享内存实现进程间锁
- 2012.09.13_使用多 fastcgi 进行 php 负载均衡
- 【Visual C++】游戏开发笔记二十一 游戏基础物理建模(三) 摩擦力系统模拟
- hdu 3332 暴力枚举
- 内存管理知识
- 用户体验:别让我想,别让我停!
- 魔鬼的梦魇—验证IE中的JS内存泄露(二)
- GIT GUI使用
- 实现两个数大小的比较
- 实现三个数大小的比较