Nginx基础
nignx简介
- Nginx 是开源的轻量级 Web 服务器、反向代理服务器,以及负载均衡器和 HTTP 缓存器。其特点是高并发,高性能和低内存。
- Nginx 专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率,能经受高负载的考验,最大能支持 50000 个并发连接数。
- Nginx 还支持热部署,它的使用特别容易,几乎可以做到 7x24 小时不间断运行。
代理简介
正向代理
- 客户端配置代理服务器,通过代理服务器,代理访问外部资源
反向代理
- 用户只请求反向代理服务器,反向代理服务器选择目标服务器,获取数据后再返回给客户端。
正向代理与反向代理的区别
举例说明
- 正向代理的代理对象是客户端,反向代理的代理对象是服务端。
- 做个租房子的比方:A租客是客户端 B中介是代理服务器 C房东是服务器
- 正向代理:A租客想租C房东的房子,但是没有途径直接找C房东,而B中介有,所以A租客找到了B中介,让B中介帮忙找C房东租到了房子
- 其中C不认识A,只认识B,C不知道房子租给了A,只知道房子租给了B
- 反向代理:A租客想组一个房子,B中介租了一套C房东的房子给A租客
- 其中A不知道房子是C的,A只知道从B这里租的,甚至可能认为B是房东
动静分离
- 为了加快网站的解析速度,可以把静态页面和动态页面由不同的服务器来解析,加快解析速度,降低原来单个服务器的压力。
- 动态页面:是指互联网架构中,不同用户不同场景访问,都不一样的页面
- 静态页面:是指互联网架构中,几乎不变的页面(或者变化频率很低)
负载均衡
- 将原先请求集中到单个服务器上的情况改为增加服务器的数量,然后将请求分发到各个服务器上,将负载分发到不同的服务器,即负载均衡。(参考反向代理)
四层与七层负载均衡的概念
-
用一句话来说,四层负载均衡就是工作在计算机网络OSI七层分层的第四层(传输层)的,七层负载均衡nginx理论简介则是工作在第七层(应用层)的。
-
也就是说,四层负载均衡是基于IP+端口的负载均衡,七层负载均衡是基于URL等应用层信息的负载均衡。
同理,还有基于MAC地址的二层负载均衡和基于IP地址的三层负载均衡。- 二层负载均衡(mac)
一般是用虚拟mac地址方式,外部对虚拟MAC地址请求,负载均衡接收后分配后端实际的MAC地址响应。 - 三层负载均衡(ip)
一般采用虚拟IP地址方式,外部对虚拟的ip地址请求,负载均衡接收后分配后端实际的IP地址响应。 - 四层负载均衡(tcp)
用虚拟ip+port接收请求,再转发到对应的真实机器。 - 七层负载均衡(http)
用虚拟的url或主机名接收请求,再转向相应的处理服务器。
- 二层负载均衡(mac)
高可用
- 为了提高系统的可用性和容错能力,可以增加nginx服务器的数量,当主服务器发生故障或宕机,备份服务器可以立即充当主服务器进行不间断工作。
- 部署主从集群