正向代理和反向代理的理解
2020-07-15 本文已影响0人
无法观测
最近学习Web,正向代理和反向代理老是搞混,趁现在还理的比较清记一下。
正向代理是客户端(我)采用的技术,客户端(我)指定一个代理服务器A替他访问指定域名或网站B,B只知道A向他请求资源,并不知道A是转发了客户端(我)的请求,是客户端(我)在访问A
反向代理是服务端采用的技术,服务端采用集群技术,通过一个服务器拦截请求并将其分发到负载轻的服务器上,对于我(客户端)而言,我(客户端)知道我(客户端)请求了域名A,但是实际上,每隔一段时间处理我(客户端)的请求的不是同一台服务器,但是在我(客户端)眼里他们是同一台服务器,我(客户端)访问的是同一台服务器。
正向代理和反向代理可以存在同一次请求中,例如我想要访问谷歌服务器,但是被拦截了,于是我通过VPN,指定A代理服务器替我访问谷歌服务器,在我以及A眼里请求的谷歌是一台服务器,实际上,A在接收到我的请求后,去请求谷歌服务器,该请求被谷歌服务器集群里的一台服务器B拦截,并由其转发给负载较轻的一台服务器C,C处理完请求后将响应转发给B,由B发送给A。
在我和A眼里反向代理服务器B就是谷歌服务器,B代理了他身后的服务器集群,在B眼里,正向代理服务器A就是访问者,A代理了用户。
正向代理是用户的选择,反向代理是服务器端的选择