🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 前言 > * 想做这个Nginx负载均衡已经很久了,从13年毕业开始到今天2017-01-16 11:36:06 > > > * 期间经过的过程是坎坷的,有很多不确定的因素存在 > > > * 前期的沉淀也是一个问题,毕竟刚出学校,对于互联网这个世界来讲,我还是小牛犊,或许也是因为自己懒而已,有些东西实战过才知道 ## [](http://blog.0796z.com/post/101.html#知识的珍贵程度)知识的珍贵程度 ~~~ 听过 -> demo过 -> 实际工作用过 -> 实际工作被坑过 -> 实际工作中被坑过很多次或深入研究总结过 ~~~ # [](http://blog.0796z.com/post/101.html#正题)正题 ~~~ 问:如何搭建集群测试环境 答:请百度了解docker,基于docker可以快速构建出众多服务集群环境 ~~~ 有了测试环境,其实配置很简单 配置如下: ``` # 06.zxzc.co.conf 配置文件 # Nginx负载均衡配置 upstream phpfastcgi{         server phpfpm_server_01:9000 weight=1;         server phpfpm_server_02:9000 weight=1;         server phpfpm_server_03:9000 weight=1; }     server { # 监听端口 listen          80; # 域名 server_name     06.zxzc.co; # 主目录 root          /disk_data/www/06.zxzc.co; # 默认页面 index           index.php index.html index.htm; # ETag模式开启 提高访问速度 etag on; # PHP脚本运行支持 location ~ \.php$ { # 监听路径 fastcgi_pass        phpfastcgi; # 默认页面 fastcgi_index       index.php; # 参数 fastcgi_param       SCRIPT_FILENAME $document_root$fastcgi_script_name; # 脚本参数 include             fastcgi_params; # Nginx开放跨域访问 proxy_set_header Access-Control-Allow-Origin $http_origin; add_header 'Access-Control-Allow-Origin' $http_origin; add_header 'Access-Control-Allow-Headers' 'X-Requested-With, Content-Type'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Access-Control-Allow-Methods' 'POST, GET, OPTIONS'; } } ``` #### [](http://blog.0796z.com/post/101.html#重新运行下docker-composeyml)重新运行下docker-compose.yml #### [](http://blog.0796z.com/post/101.html#这是docker环境启动配置文件可以把你想启动的服务都在这里写好配置)(这是docker环境启动配置文件,可以把你想启动的服务都在这里写好配置) 然后我们看下docker环境中容器的ID,再在php文件中我们打印出$_SERVER,观察hostname的信息 ![image](http://chuantu.biz/t5/46/1484539186x1901811940.png)![image](http://chuantu.biz/t5/46/1484539338x1901811940.png)![image](http://chuantu.biz/t5/46/1484539376x1901811940.png)![image](http://chuantu.biz/t5/46/1484539390x1901811940.png) #### [](http://blog.0796z.com/post/101.html#刷新了3次依次命中后端服务器当然如果有其中一台挂了也会跳过这台)刷新了3次,依次命中后端服务器,当然如果有其中一台挂了,也会跳过这台 当前Nginx的负载均衡算法是根据weight来优先计算的,还有等等很多算法具体可以参考官方网站的documents