首页 > 代码库 > Nginx之负载均衡服务器揭秘

Nginx之负载均衡服务器揭秘

Nginx代理服务器, 一次性代理多台后端机器, 利用负载算法, 决定将当前请求传递给某台服务器执行.

技术分享

有哪些后台服务器?例如微软的IIS,Apache,Nginx

负载算法是什么? 加权轮询.

 

nginx的配置项:

upstream 可以配置一个服务器集群

配置方式, 指出服务器列表, 并指明需要的算法即可:

典型的算法, 加权轮询.

配置如下:

技术分享

nginx –s reload 重启服务器

技术分享

例如:此时通过浏览器请求 loadBalance.nginx.com /index.html

配置浏览器所在的操作系统的hosts.

技术分享

PS: 本地测试时, 需要暂时关闭, 对Host请求头的传递:

技术分享

测试结果:连续请求一个地址, 发现所使用的index.html是不同的:

技术分享

技术分享

 

PHP负载均衡服务器解决方案:

PHP程序就产生了新问题

1.程序代码部署

保证每台web服务器的中使用的代码一致的.

A:办法之一: git公共版本库的方式.

在每台服务器上执行pull即可

B:办法二: 利用shell脚本(管理服务器的脚本程序)

C:办法三: 利用工具完成. 同步的环境工具.docker, ..

 

2.会话session数据共享

提供独立的session服务器即可

3.文件数据的共享

提供独立的文件服务器进行管理

1.将文件内容存储在数据库中. 利用blob二进制数据进行存储.

2.利用ftp协议将处理的文件, 上传到独立的文件服务器中. 导致很多网站, 图像的URL的域名与网站本身是不一致的.

http://www.nuskinbing.com冰之爱如新化妆品网

图片存储在<img src="http://image.nuskinbing.com /log.png" />单独的子域名服务器

3, 利用第三方存储服务器, 将文件存储在第三方服务器上. 由第三方服务器给资源的链接, 在项目展示即可. 例如, 百度, 腾讯云存储, 亚马逊S3存储集群.

Nginx之负载均衡服务器揭秘