学习 nginx (持续更新)

 

什么是代理与反向代理,有什么应用场景? 

平常经常听别人说代理与反向代理,那么这二者到底有什么区别呢?

代理

场景:我需要访问一个服务器C,但是由于某些原因我无法访问到它,(典型的就是你FQ,然后failed了),可是我就是控制不住自己,这个时候,服务器B告诉我,来吧,你想要什么,我来帮你传话,于是,我把自己的请求给了B,B接收到之后,帮我转给了C,(因为B和C之间的线路是畅通的),C把返回结果给了B,B非常友好地把结果又还给了我,我觉得太好用了简直,于是我周围的小伙伴都开始将请求发给B,通过B的转发,来获取C的信息,这个时候对于服务器C,C只知道是B发了请求过来,不知道我们这群小伙伴的存在,所以这就是代理。

 

概括一下就是,一个请求对于后端服务器C是透明的,它只知道是B发过来的,并将处理结果返回,至于谁将请求发给B,随便。

 

反向代理

场景:我向B发送了一个请求,B对我的请求进行分析,发现我请求的是文章详情,于是B将请求转发给处理文章详情的应用服务器C1,我又向B发了一个请求,B解析之后,发现请求的是我的声望值等个人信息,于是B将请求转发给专门处理个人信息的应用服务器C2,就这样,我不在乎我要请求的数据是在C1,C2,还是C3上,我只需要发送请求到B就可以了,B会对我的请求进行解析,决定转发请求给Cx来处理,并得到处理结果后返回给我。

概括一下就是,一个请求对于客户端是透明的,我不知道我的请求具体由谁处理,我将请求都发给B,至于B发给Cx,随便。

代理与反向代理在实际工程中应用很广泛,代理在大家平常生活的FQ中应该用过很多了,反向代理则是许多大公司业务处理过程中的经典方式,前端由一个nignx负责根据用户的请求信息转发请求给后端相应的应用服务器(这个过程中也可以加入负载均衡)。

 

 

参考资料

 1  什么是代理与反向代理,有什么应用场景?                   https://p.baidu.com/question/28256162633066373463350200

2  nginx官网   http://nginx.org/en/

posted @ 2017-12-14 16:03  kongmeng  阅读(202)  评论(0编辑  收藏  举报