反向代理服务器
通常一个大型项目会部署在一组或者多组的后端服务器上,反向代理即就是做这些后端服务器的代理人,只把代理人的IP/域名暴露给客户端,当客户端请求到达时,代理人根据客户端的请求,从其后端的服务器上获取资源,再返回给客户端,从客户端角度来看,只能感知到代理人的存在,而不会感知到后台服务器的存在。
Nginx的特点
- 反向代理加速(无缓存)
- 简单的负载均衡和容错
- 基于IP和名称的虚拟主机服务
- 支持keep-alive和管道连接
- 支持热重启
- …
Nginx内置负载均衡相关策略
-
基于轮询的均衡策略
轮询策略时Nginx的默认负载均衡策略,就是对于到达Nginx服务器的请求按照遍历的方式进行发放
-
基于最少连接数的均衡策略
在该策略下,Nginx会判断当前后端集群服务器中哪个server的Active Connection的数量是最少的,对于新到达Nginx服务器的请求,Nginx将转发给对应的后端服务器
-
基于IP-hash的均衡策略
使用请求的IP地址建立IP-Server之间的映射关系,将对应的IP转发给对应的Server
-
基于加权轮询的衡策略
根据Server的各项信息组织Server的权重,按照优先级进行排序,将请求发给当前优先级最高的Server
Nginx安装
yum install nginx
Nginx结构
Nginx master进程
主要用来管理worker进程,同时接收来自外界的信号,像各个worker进程发送信号,监控worker进程的运行状态(当worker异常退出时,会重启worker进程)
- 读取和验证配置
- 创建,绑定,关闭socket
- 启动,终止,