码迷,mamicode.com
首页 > 其他好文 > 详细

聊聊代理

时间:2020-04-21 23:57:25      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:反向   一个人   优缺点   中间   一个   公安局   指定   eve   最大   

聊聊代理

代理是什么?代理就是我代表你,仅此而已,这就是代理。

代理有啥好处?举个例子,我要去和人打官司,但是我不是法律通,法律小白,那怎么办?

好办!找个律师,由律师全权代理这件事,律师也就成了我的代理人,所有人需要找我的话,不用直接找我,请直接找我的律师,他是我的代理人!

找律师有什么好处?律师精通相关法律,并且知晓我全部事情,那么就可以运用他的法律专业知识和对我的事情了解,来帮我赢得官司!

因为律师的存在,补充了我在打官司这个事情中,法律知识和能力的缺失,律师带着我的案件和他的法律知识,成为一个新的个体:代理人!

这就是所谓代理:通过引入中间人对原有功能的缺失做一个补充增强,这个中间人就是代理人,这种行为就是代理。

生活中的代理随处可见,也比较简单,比如律师,我怎么知道我找你就行了?好办,拿出一个委托代理协议就可以了。给别人代办事情,出具一个委托代理证明即可。

我们使用时Nginx,把Nginx的地址对外发布,其他客户端访问时就知道访问这个地址就可以了。

静态代理

明白了代理是个什么事情,那么就来说说静态代理,什么是静态代理?

静态就是不变的,已知的。

我们上面的举的例子有些就是静态代理,比如在提起诉讼的时候,就已经确定了律师是谁。

这种一个事情的开始时候就确定下来的,就是静态代理。

动态代理

有静就有动,阴阳才能调和。

那么动态代理是啥呢?在事情的进行过程中才确切知道我的律师是谁,比如法官说,有请被告律师发言,结果突然在听众席中一个人起身滔滔不绝,所有人一脸懵逼!

不过这种情况确实是一个动态代理,在需要用到这个律师的时候,所有人才知道律师是谁,哪怕是被代理人都不知道。

是不是很诡异?这种情况对应到现实中是很难被接受的,而且很不利于事情的处理。

那么生活中是不是就没有了动态代理呢?答案肯定是否定的!

比如我办理了身份证,需要拿身份证的时候,我不方便过去,怎么办呢?找个人帮我拿一下。但是对于公安局来说,身份证这么重要的东西,不能随便来个人就可以领取啊!这么来办,整个代领取身份证的协议,到时候是本人或者不是不是本人,只要有这个协议,我就把身份证给你,对于公安局来说,我并不知道会是谁来领取,直到领取的人来了我才知道。

这就是所谓的动态代理。

动静对比

那么动态代理和静态代理哪个好呢?

各有各的优缺点

对于静态代理来说,比较简单,明了。

而动态代理就复杂了些,我们还得整个协议,然后确认协议等。

但是静态代理不够灵活,动态代理能带来更大的灵活性。

比如,我说不知道到时候自己能不能亲自过来领取身份证,如果是静态代理的话,这个时候就要指定一个人来帮我领,这种提前指定,死板,没办法变更。但是也简单,代理人过来,公安局直接就知道就是你了,也不用出具什么代理委托证明协议了。

这种方式最大的问题在于,我怎么能很好的确定下这个代理人呢?如果我确定好的人,到时候因为别的事,去不了了,我又没法变更代理人,这事就无解了。

正反向代理

无论正向代理还是反向代理,其实都是静态代理,正反代理常用于计算机网络中,这是因为在计算机网络中,多了一个固定的Client和Server,在这种固定模式下,代理人作为哪一方的代理是不同的。

比如,代理人作为Client的代理,那么这种情况下,就是一个正向代理,也叫Forward Proxy

如果代理人作为Server的代理呢,就是反向代理,因为和正向代理的方向相反,所以叫反向代理。

那么更具体的正向代理和反向代理的区别是啥呢?

就是看代理人在代理时,Client是有限的,还是Server是有限的。

如果Client的数量是有限的,并且和代理人强关联,那么就是一个正向代理

反之如果Sever的数量是有限的呢,就是一个反向代理。

这里的强关联,比如正向代理一般都是有认证到代理服务器的。

而反向代理的话,对于代理服务器是知道所有被它代理的Server。

聊聊代理

标签:反向   一个人   优缺点   中间   一个   公安局   指定   eve   最大   

原文地址:https://www.cnblogs.com/heartlake/p/12748773.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!