今天接触到两个熟悉又陌生的词汇: 反向代理, 上游服务器. 熟悉是因为我经常看到, 陌生是因为, 我没有去了解过.
其实, 造成这种现象的原因是, 我把之前更多的时间放在了学习 DL 上了, 对于 web 甚至对于 DL 本身, 只要别人的代码能用, 我只做适当的修改, 尽快的完成我的目的, 绝对不 "浪费" 时间去学习.
这种态度有好也有坏, 好处是我可以做更多的事情, 想做什么就做什么, 并且积累了一定的经验, 可以快速开发很多东西. 但是缺点是, 我深陷在快速开发而精进缓慢的泥潭里, 很难有耐心听老师从基础一点一点的讲.
话归正题,"反向代理" 和 "上游服务器" 分别是什么呢? 他们有什么用?
根据百度百科的定义
反向代理服务器位于用户与目标服务器之间, 但是对于用户而言, 反向代理服务器就相当于目标服务器, 即用户直接访问反向代理服务器就可以获得目标服务器的资源. 同时, 用户不需要知道目标服务器的地址, 也无须在用户端作任何设定. 反向代理服务器通常可用来作为 Web 加速, 即使用反向代理作为 Web 服务器的前置机来降低网络和服务器的负载, 提高访问效率
反向代理的工作原理是, 代理服务器来接受客户端的网络访问连接请求, 然后服务器将请求有策略的转发给网络中实际工作的业务服务器, 并将从业务服务器处理的结果, 返回给网络上发起连接请求的客户端.
对于上面的定义, 我理解的反向代理是接受客户端的网络请求, 然后将请求转发给服务器集群中的某一台服务器处理的过程. 目的是使负载均衡.
上游服务器是什么, 我没有找到准确的定义, 但是我在网站发现了一张图片, 看这张图片, 我理解的上游服务器就是反向代理负载均衡时分发请求的对象.
以上便是我对反向代理和上游服务器粗浅的理解, 如果有不准确的地方, 请大家指正.
来源: http://www.bubuko.com/infodetail-3447677.html