Nginx反向代理与负载均衡
1.什么是正向代理
客户端通过代理服务器访问原始服务器,对于客户端而言,正向代理的是客户端, 客户端必须要进行一些特别的设置。
2.什么是反向代理
客户端发送请求给代理服务器,代理服务器再将请求转发给内网的其他服务器也叫原始服务器,然后把服务器的响应转发给客户端,反向代理器代理的是服务端。
Es:一个用户在公司用公司内网访问互联网的天猫购物,内网到公网之间是正向代理,代理的是内网的客户端。互联网通过反向代理将请求转发给内网的其他服务器(天猫服务器)反向代理的是互联网。
简而言之:内网访问公网是正向代理,反之反向代理。
3.Nginx
它是一个高性能很强大的服务器,反向代理服务器,作为反向代理服务实现了负载均衡。
官网下载:http://nginx.org/
常用命令:
启动 Nginx
停止 Nginx -s stop
重启 Nginx -s reload
检查当前配置文件 Nginx -t
按指定配置文件启动 Nginx -c conf /test.conf
Nginx的核心配置为:conf 下的nginx的conf。
Nginx.conf的配置文件构成:
负载均衡: 是将请求/数据 均匀分摊到多个服务器,作用是均匀的分摊服务器的压力。
负载均衡的基本策略:
-1:轮询
-2:按权重大小(weight=n),weight的数值被分配的越大,接收到的请求次数越多。
-3:按ip地址哈希(ip_hash)
-4:按urL哈希(hash $request),按照url哈希计算后的结果,决定请求分配给哪一台服务器。
-5:按最短时间响应(fair),nginx自动根据页面大小,加载时间长短,智能的进行负载均衡。