SpringCloud理论篇——反向代理初探

本文介绍了SpringCloud中的Zuul组件,重点探讨了反向代理的概念,包括正向代理和反向代理的区别。反向代理主要用于服务端,隐藏真实服务器地址,实现负载均衡和安全防护。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近学习到了SpringCloud的Zuul组件,总是听说一个词–反向代理,所以搜了相关资料,大概了解了正向代理和反向代理的区别。

参考文章:https://www.cnblogs.com/Anker/p/6056540.html,这篇文章讲的清楚明白。

1.代理?为什么用代理
普通的客户端到服务端的访问流程是客户端发起请求到服务端,由服务端返回内容到客户端。而在实际中,客户端有的时候访问不到服务端,比如Google,所以需要一个代理,在client和server之间形成一个桥梁。

2.正向代理
正向代理的模式是,client通过IP地址和端口号连接代理服务器,将请求发送到代理服务器,再由代理服务器去server获取数据,然后代理服务器再将数据返回给client。可以看到client与代理服务器处于同一个局域网。
一般正向代理服务器都是这么配置的,大家一定很熟悉
图解
图片来自知乎

正向代理的用途:
(1)访问原来无法访问的资源,如google
(2)可以做缓存,加速访问资源
(3)对客户端访问授权,上网进行认证
(4)代理可以记录用户访问记录(上网行为管理),对外隐藏用户信息

3.反向代理
如果说正向代理服务器代理的是客户端的请求,即代理client去跟server获取数据,那么反向代理服务器就是代理的服务端的接口,即代理server去响应client的请求。
图片来自知乎
客户端无需配置代理服务器的位置和端口。从客户端角度来看,反向代理服务器就跟正常的服务器一样,client的任何请求都会在反向代理服务器那里分发到指定的server,然后server返回的数据再由代理服务器返回给client,server的地址对client是不可见的。相对于正向代理,反向代理服务器与server处在一个局域网中,与正向反过来了,所以叫做反向代理。
学习过zuul网关之后,了解到这种反向代理的作用之一是分发请求并做负载均衡,同时在代理服务器中也可以对client的请求鉴权什么的,此外,由于server地址对client不可见,因此也保障了server的安全。

反向代理的作用:
(1)保证内网的安全,可以使用反向代理提供WAF功能,阻止web攻击:大型网站,通常将反向代理作为公网访问地址,Web服务器是内网。
(2)负载均衡,通过反向代理服务器来优化网站的负载

正向代理与反向代理的区别
图片来自知乎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值