📚 Lazy — 懒惰
v1.0.0加载策略实现者 在持久层中正确实现 Lazy Load(延迟加载),避免 N+1 查询、级联加载及代理身份陷阱。适用于遇到…
详细分析 ▾
运行时依赖
版本
初始版本:为持久层实现正确的 Lazy Load 策略选择与规划,避免 N+1 查询及相关陷阱。 - 识别数据源模式与所用 ORM/框架。 - 对关联进行分类,确定合适的延迟/立即加载策略。 - 检测并处理 ripple loading 与代理身份陷阱。 - 通过权衡分析选择最优 Lazy Load 变体。 - 输出定制实施方案,含批量加载、立即加载覆盖、Identity Map 集成及 ripple-loading 审计。 - 适用于主流 ORM(Hibernate、SQLAlchemy、Django、EF Core、TypeORM、Rails)及手写映射器。
安装命令
点击复制技能文档
--- name: lazy-load-strategy-implementer description: | 在持久层正确实现 Lazy Load(延迟加载),避免 N+1 查询、ripple loading 与代理身份陷阱。 适用场景:对象图加载缓慢、出现 N+1、贪婪加载导致 OOM、ORM 懒加载配置错误、或需权衡贪婪 vs 延迟策略。 覆盖:Hibernate FetchType.LAZY / @BatchSize、SQLAlchemy lazy='select'/'selectin'/'subquery'、Django select_related / prefetch_related、EF Core Include() vs Load()、TypeORM eager/lazy relations、Rails includes/preload/eager_load、手写 Data Mapper 虚拟代理。 四种实现变体——延迟初始化、虚拟代理、值持有者、幽灵——含适用规则与权衡分析。 识别并修复:集合 ripple loading(N+1)、代理身份陷阱(同一行两个代理,相等性失效)、小图误用懒加载。 输出实现方案:选定变体、ORM 配置或代码草图、批量加载配置、热路径贪婪覆盖、Identity Map 集成、ripple loading 审计。 需已知在用数据源模式(Data Mapper / ORM vs Active Record);未知则先调用 data-source-pattern-selector。 version: 1.0.0 homepage: https://github.com/bookforge-ai/bookforge-skills/tree/main/books/patterns-of-enterprise-application-architecture/skills/lazy-load-strategy-implementer metadata: {"openclaw":{"emoji":"📚","homepage":"https://github.com/bookforge-ai/bookforge-skills"}} status: draft source-books:
- id: patterns-of-enterprise-application-architecture
- type: codebase
- type: document
- "已确定数据源模式;未知则运行 `da