mirror of
https://github.com/crazybber/go-pattern-examples.git
synced 2024-11-25 21:26:03 +03:00
1.4 KiB
1.4 KiB
代理模式
代理模式用于延迟处理操作或者在进行实际操作前后进行其它处理。
代理模式看起似乎像中介者(中间人)模式,一定要明确两者是完全的不同的模式,目标应用场景完全不同。
代理模式强调的是对一方的隐藏,对另一方则是完全透明的 代理模式,在动作上,强调的是在单向数据流下,对一方到另一方数据的在进一步转发前,会进行必要的过滤、拦截,校验等操作.
中间人模式中的两方对象是地位平等的会话关系,中间人代表的是两边,持有两边的信息,比如房东和中介,房客和中介,中间人同时代表两边.
现实生活中,代记账公司,代注册工程是最形象的代理模式之一,当你想注册公司的时候,不要自己直接跟工商局打交道,搞各种材料,交给代理公司,代理公司会替你做这些乱七八糟的时候,然后给你一个结果。
在我们的应用系统中常见的代理有
- nginx流量代理(反向)
- 上网代理(正向)
- 防火墙代理(保护内部)
对于被代理的的一侧,往往都是需要针对代理进行一定配置,对另一层是透明的,代注公司代理用户,需要需要针对用户做一些配置和了解。对于工商局来说,工作过程中,代理可以认为是透明的,本质上,工商局只是在和用户(的信息)打交道.