应用的服务器分为前端和后端

  前端服务器: 负责对静态文件(比如JS、CSS、图片)等的响应, 以及把PHP请求分发到后端服务器

  后端服务器: 处理前端服务器分发而来的PHP请求

前端服务器: 192.168.1.10

后端服务器: 192.168.1.11, 192.168.1.12

后端服务器的配置:

  两台后端服务器分别配置 php-fpm 的监听得之和端口, 可以通过修改php-fpm.conf或对应php-fpm配置文件来修改监听地址和端口

  由于是 php-fpm, 所以配置如下

  192.168.1.11 服务器中php-fpm的配置信息

listen=192.168.1.11:

  192.168.1.12 服务器中php-fpm的配置信息

listen=192.168.1.12:

  修改完后重启两台服务器的 php-fpm

前端服务器的配置:

#其中 "blog" 表示随意起的一个 upstream 的名称, 下文要用, 此块用来设置后端服务器
upstream blog {
server 192.168.1.11: weight=; #192.168.1.11:9000为后端服务器192.168.1.11的php-fpm进程监听的地址和端口
server 192.168.1.12: weight=; #192.168.1.12:9000为后端服务器192.168.1.12的php-fpm进程监听的地址和端口
} server {
listen ;
server_name blog.yilexun.com;
root /dragon/webapp/blog;
index index.html index.php; location ~* \.(ico|css|js|gif|jpe?g|png)$ {
#error_page /.html;
break;
}
if (!-e $request_filename) {
rewrite ^(.*)\.(ico|css|js|gif|jpe?g|png)$ /.html last;
rewrite ^(.+)$ /index.php last;
break;
}
location ~* \.php(\?|\/)? {
fastcgi_pass_request_body off;
fastcgi_split_path_info ^(.+\.php)(.*)$;
client_body_in_file_only clean;
client_max_body_size 8m;
fastcgi_param REQUEST_BODY_FILE $request_body_file;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass blog; #此处 "blog" 就是上面定义的 upstream 的名称
fastcgi_index index.php;
}
location = /50x.html {
root html;
}
}

  配置完后重启 nginx

分别在前端服务器和后端服务器上都要上传相同的目录文件, 我的实验结果是虽然用后端服务器解析PHP文件, 但是前后端服务器都必须有对应的PHP文件目录

  /dragon/webapp/blog/

    index.php

<?php
echo '前端'; //三台服务器分别为 '前端', '后端1', '后端2'

访问 http://blog.yilexun.com/index.php, 每次刷新可以看到输出结果在'前端', '后端1', '后端2', 中不断变化, 表示配置成功

接下来会继续实现 nginx 服务器间的负载均衡, 敬请期待。。

Nginx-负载均衡实践(一、对PHP-FPM进行分摊)的更多相关文章

  1. Nginx负载均衡实践之一:基本实现

    由于现在的网站架构越来越大,基于互联网的用户也是日渐增长,所以传统的单机版服务器已经渐渐不能适应时代发展的需要.最近在和其他企业接触的过程中,发现对于互联网的经验尤为看重,所谓的互联网经验,其实就是指 ...

  2. Nginx 负载均衡和反向代理实践

    nginx 以哪个配置文件启动 Nginx 负载均衡和反向代理实践 环境介绍 192.168.1.50    在这台主机上配置Nginx 的反向代理,负载均衡,和web1,web1使用的81号端口 1 ...

  3. 搞懂分布式技术9:Nginx负载均衡原理与实践

    搞懂分布式技术9:Nginx负载均衡原理与实践 本篇摘自<亿级流量网站架构核心技术>第二章 Nginx负载均衡与反向代理 部分内容. 当我们的应用单实例不能支撑用户请求时,此时就需要扩容, ...

  4. Nginx负载均衡 后端服务器怎么共享Session 问题

    Nginx负载均衡 Nginx负载均衡一些基础知识: nginx 的 upstream目前支持 4 种方式的分配 1).轮询(默认)       每个请求按时间顺序逐一分配到不同的后端服务器,如果后端 ...

  5. Nginx负载均衡深入浅出

    nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式对后端服务器做负载均 ...

  6. Nginx负载均衡介绍

    Nginx真心牛逼 nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以按照轮询.ip哈希.URL哈希.权重等多种方式 ...

  7. nginx负载均衡 - session失效

    最近迷上了Nginx,真实麻雀虽小,五脏俱全..功能实在强大.. nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态.静态页面的分离,可以 ...

  8. 利用Docker快速创建Nginx负载均衡节点

    本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.Self-Host Kestrel 1. 在vs2017中新建dotnet core2. ...

  9. Nginx负载均衡配置简单配置方法

    http://www.jb51.net/article/121235.htm Nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至不同的Web服务器.下面通过 ...

  10. 使用Docker快速创建.Net Core2.0 Nginx负载均衡节点

    本文版权归博客园和作者吴双本人共同所有 转载和爬虫请注明原文地址 www.cnblogs.com/tdws 一.Self-Host Kestrel 1. 在vs2017中新建dotnet core2. ...

随机推荐

  1. 【UOJ #179】线性规划 单纯形模板

    http://uoj.ac/problem/179 终于写出来了单纯性算法的板子,抄的网上大爷的qwq 辅助线性规划找非基变量时要加个随机化才能A,我也不知道为什么,卡精度吗? 2017-3-6UPD ...

  2. 【DFS】Paintball(6-22)

    [UVA11853]Paintball 算法入门经典第6章6-22(P175) 题目大意:有一个1000*1000的正方形战场,西南角坐标(0,0),西北角坐标(0,1000),有n个敌人,每个敌人处 ...

  3. python基础之反射内置方法元类

    补充内置函数 isinstance(obj,Foo)   # 判断obj是不是foo的实例 issubclass()      # 判断一个类是不是另一个类的子类 反射 什么是反射? 通过字符串来操作 ...

  4. 102.愤怒的LJF

    2841 愤怒的LJF  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description LJF发现ZPC的积分比他高,他很愤 ...

  5. PHP“Cannot use object of type stdClass as array”

    php再调用json_decode从字符串对象生成json对象时,如果使用[]操作符取数据,会得到下面的错误 错误:Cannot use object of type stdClass as arra ...

  6. VMware 8安装Mac OS X 10.7

    (Windows 7 X64环境下,VMware 8.0正式版)虚拟机首尝MAC OS X 10.7 Lion系统成功,特将此好消息分享.2年了,终于我也装上了Mac,我也成功的尝到了苹果味道,看着那 ...

  7. appium+python自动化46-安装app三种方式

    前言 adb安装 1.在app自动化之前,首先手机上有要被测试的app,如何把电脑本地上的app安装到手机上呢?可以在运行自动化代码前,在cmd输入adb指令,把电脑app安装到手机上 adb ins ...

  8. iOS 在某一个ViewController跳转到TabViewController中的某一个ViewController

    要做到这个分为两步 第一步, 导入app #import "AppDelegate.h" 第二步, 监听方法中先写加入以下代码: [self dismissViewControll ...

  9. [转]Data Flow How-to Topics (SSIS)

    本文转自:http://technet.microsoft.com/en-us/library/ms137612(v=sql.90).aspx This section contains proced ...

  10. Java中文语言处理HanLP

    官网:http://hanlp.linrunsoft.com/ 1.中文分词:http://hanlp.linrunsoft.com/doc/_build/html/segment.html 2.摘要 ...