nginx的负载均衡原理学习-自己整理
Nginx的优点:
安装:
启动服务:
nginx
Master进程是主进程,读取配置文件和管理worker进程,master只有一个
worker进程负责处理实际的请求,worker可以有多个
停止:
一、启动,停止和重新加载配置
1.使用 -s 参数,语法规则如下:
nginx -s signal
signal值可以是如下几种值:
* : stop 快速关闭
* : quit 优雅关机(等待当前所有请求执行完成退出)
* : reload 重新加载配置文件
* : reopen 重新打开日志
2.可以使用kill向nginx发送信号
kill -s QUIT [pid(nginx进程号)]
nginx.conf主配置文件的位置:
worker进程的数量:
Worker进程数量变成10个了
Worker进程的数量最好与CPU内核的数量一致,最好!!!
Worker进程数量改成auto模式
设置worker进程的数量属于全局配置
全局模块:
还有一些局部配置模块如下:
event模块:
主要是服务器与客户端之间网络连接的一些配置
比如每个worker进程可以同时接收多少个网络连接
http模块:
http模块里面又包括好多个server块:
也可以叫虚拟主机
反向代理和负载均衡:
正向代理:
反向代理:
在配置反向代理之前,先把网页选择好,在3.201和3.200机器上面部署http服务器,然后修改3.201的端口,因为反向代理的nginx的端口已经是80,需要改成9999的http端口
反向代理配置:
- 设置集群名称,在http模块下面,server块之前设定upstream
upstream backend{
server 192.168.3.201:9999;
server 192.168.3.200:80;
}
server {
location / {
root html;
proxy_pass http://backend;
index index.html index.htm;
}
实现效果:
使用权重来调整请求的多少,根据服务器的性能来定,性能好的请求权重多一些!!
Ip_hash值来调整负载均衡的策略:
根据客户端的IP地址来进行一个哈希,同一个客户端的请求
就会被分配到同一个服务器上面,这样就解决了session会话的问题: