Files
hyperf_test/document/proxy.md

21 lines
938 B
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

### 代理模式 (Proxy Pattern) 详解
> 代理模式是一种结构型设计模式,它允许你提供一个代理对象来控制对另一个对象的访问。代理可以在不修改原始对象的情况下,增强或控制对它的访问。
#### 核心概念
装饰器模式主要解决以下问题:
- 控制访问:代理可以决定是否允许客户端访问目标对象(如权限控制)。
- 增强功能:代理可以在调用目标对象前后添加额外逻辑(如缓存、日志、延迟加载)。
- 远程访问代理可以代表远程对象如RPC、数据库访问
- 虚拟代理:代理可以延迟创建开销大的对象(如图片懒加载)。
#### 常见应用场景
- Spring AOP通过动态代理实现切面编程
- MyBatisMapper接口的代理实现
- RPC框架远程服务调用的本地代理
- 图片懒加载:先显示缩略图代理,点击再加载原图