Nginx学习笔记-负载均衡和反向代理

1.代理与反向代理
代理服务器:
代理 内部网络Internet的连接请求。
不支持外部对内部网络的访问请求。
反向代理服务器:
代理 外部网络上的主机访问 内部网络
 
2.常见WEB负载均衡方法
(1)用户手动选择
常见于各个资源下载网站,用户自己手动选择从哪个服务器下载。
(2)DNS轮询方式
对同一主机名,添加多条 A记录,让其DNS轮询多个IP
可以通过Linux的dig命令查看域名解析情况:
dig xxx.baidu.com
DNS轮询的缺点:
A.可靠性低
B.负载分配不均衡
因此DNS轮询适用于可靠性要求不高的负载均衡,比如图片服务器集群、纯静态网页服务器集群等。
(3)四/七层负载均衡设备
通常作用与OSI的第四层或第七层
OSI:开放系统互连模型(Open System Interconnection)
 
具体7层数据格式功能与连接方式典型设备
应用层 Application网络服务与使用者应用程序间的一个接口网关
表示层 Presentation数据表示、数据安全、数据压缩
会话层 Session建立、管理和终止会话
传输层 Transport数据组织成数据段Segment用一个寻址机制来标识一个特定的应用程序(端口号)防火墙
网络层 Network分割和重新组合数据包Packet基于网络层地址(IP地址)进行不同网络系统间的路径选择路由器
数据链路层 Data Link将比特信息封装成数据帧Frame在物理层上建立、撤销、标识逻辑链接和链路复用 以及差错校验等功能。通过使用接收系统的硬件地址或物理地址来寻址网桥、交换机、网卡
物理层Physical传输比特(bit)流建立、维护和取消物理连接光纤、同轴电缆、 
双绞线、中继器和集线器
 
 
3.多线多地区智能DNS解析与混合负载均衡方式
 
 
4.Nginx反向代理配置
使用反向代理之后,后端WEB服务器(以PHP为例),就不能直接通过$_SERVER['REMOTE_ADDR']变量来获取用户的真实IP了,这时获取的将是Nginx负载均衡服务器的IP。此时需要在Nginx反向代理时添加Header头信息X-Forwarded-For,让后端服务器能通过$_SERVER['HTTP-X-FORWORDED-FOR']获取用户真实IP。参考平时我们常用的获取用户IP的函数。
 
 
5.动静态网页分离
 
 
Citrix NetScaler 4-7层负载均衡器(基于TCP)
Nginx负载均衡架构

 
 
6.关键的Upstream模块
Upstream:Nginx负载均衡的主要模块,位于http之内,默认的负载均衡方式为轮询。
ip_hash:负载均衡时,将某个客户端IP的请求,通过哈希算法,定位到同一台后端服务器上,以解决session不共享的问题。
如果能做到session共享,还是不要用这个配置,因为其可能造成负载不均衡。
摘除负载均衡服务器,需要设置其down,而不是删除记录,删除记录可能造成session失效(原来的back1hash到back2上去了)
upstream backend{
     ip_hash;
     server back1.10jqka.com.cn;
     server back2.10jqka.com.cn;
     server back3.10jqka.com.cn down;
}
 
server
语法:
server name [parameters]
默认none
name可以是域名、IP、端口号、UNIX Socket
parameters可以是
 
 
7.负载均衡服务器的双机高可用
两种实现方式:
(1)一台主服务器加一台热备服务器
(2)两台负载均衡服务器

转载于:https://www.cnblogs.com/zhouchangju/archive/2013/01/10/2853968.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值