nginx的正向代理和反向代理

正向代理以及缓存配置:

代理:客户端不再是直接访问服务端,通过代理服务器访问服务端。

正向代理:面向客户端,我们通过代理服务器的ip地址访问目标服务端。

服务端只知道代理服务器的地址,真正的客户端ip可以隐藏。

科学上网

反向代理:

正向代理我们是知道服务器的地址,也知道我们访问的web服务器。

反向代理,客户端还是访问的代理地址,但是具体的访问web服务器是哪一台,我们并不知道。

作用:请求分配到多个后台服务器上,分担服务器的负载,提供系统可用性和稳定性

缓存加速

安全保护

四层代理和七层代理之间的区别:

正向代理,http模块的server和location

http模块的配置都是7层

7层就是应用层,使用的是http协议,可以对请求进行解析和处理,7层代理走的是用户态,应用协议和程序功能。

7层的处理速度相对比较慢,但是可以提供更高级的功能和更好的用户体验。

既可以是域名也可以是ip加端口

4层是传输层,ip+端口,请求转发到后端,无法对请求进行深入的解析和处理。只是对请求流量的转发。

四层转发是内核态,内核处理内核转发,所以速度较快。

应用场景:7层代理,一般都是对外提供访问,需要对请求进行处理。包括安全,过滤,流量控制。

四层代理,一般都是内部使用,不需要对流量,请求做特殊处理。

配置方法已经负载均衡的算法。

反向代理=负载均衡

配置方法:

七层只能写在http模块当中,命令upstream

四层只能写在全局配置当中,不能写在http模块当中

负载均衡的算法:

1、轮询 round robin rr:轮询算法是最简单也是最基础的算法,也是默认速发。请求轮流分配到后端服务器。

轮询算法适用于后端服务器处理能力相同的情况,访问量不大的情况。默认算法,可以不加。

2、加权轮询:在轮询的基础之上,给每个后台服务器设置不同的权重。流量的分配不一定是按照权重比来的,权重高的被转发的概率大,权重低的相对较小。

后端服务器的性能有差异,性能高,权重相对更高,性能低,权重相对小。

weight

3、最小连接数算法,least_conn 会把请求发送到当前连接数较小的后端服务器上。

4、ip hash*怎么做会话保持?iphash根据算法,计算客户端的ip地址的hash值,然后将请求转发到相应的服务器。

在第一次访问网站之时,就会计算出这个hash值,会把请求分到一个服务器,但是下一次客户端如果使用相同的ip地址再次访问,就不再分配到其他的服务器。除非后台服务器的算法变更,或者后台的服务器数量发生了变化,这时才会更改访问的服务器。适用场景,高并发。如果说客户端进来之后,不停的轮换服务器,反而会加重服务器的负担,固定在一台服务器上,降低了代理服务器的压力,同时也节约了资源。

nginx当中怎么实现会话保持?

ip_hash可以实现会话保持

sessionc 动态页面里面配置会话

5.URL_hash 根据请求的url地址来计算hash值,然后转发。如果每次请求的uri都一样,就会被分配到同一个服务器。

转发的地址发生变化,后台服务器清理缓存或者后台服务器的数量发生变化。

以上都是7层当中使用的,四层没有ip hash和uri hash算法。

基于域名实现负载均衡

四层代理:

配置方式只能是在全局模块,算法

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值