用途:在做出任何结构性技术决策前提供判断框架,核心原则是“没有已确立的需求,就不引入结构性复杂度”。若无法指出现有具体需求,就选更简单的方案。适用场合包括:选数据库、设计 API、组织新项目、引入缓存层、添加消息队列或事件系统、选择认证策略、决定单体还是服务。
必要用法(Entry Protocol):做任何结构决策前,先识别驱动该选择的当前具体需求,再比较满足需求的最简方案,然后说明为什么更复杂方案是必要的;若无理由就用简单方案,有理由则记录驱动复杂度的需求,最后决定并推进。跳过任一步即视为过度设计。
主要能力(决策默认项):单体 vs 服务默认选单体,仅当某组件确需独立伸缩或部署时才拆分服务。数据库默认 PostgreSQL,能覆盖大多数工作负载;仅当确需文档型、键值、全文搜索、时序或图遍历等不同访问模式时再换。API 默认 REST,仅当客户端确需灵活查询用 GraphQL,仅当内部服务且实测 REST 吞吐不足用 gRPC。认证默认基于会话的 httpOnly cookie,仅当跨域无状态认证是具体需求才用 JWT。缓存默认不引入,先优化查询,实测瓶颈后再加。事件驱动默认直接函数调用,仅在需要异步处理或服务边界解耦时再引入队列。文件组织按能力而非按层。
限制:资料未提供具体安装命令、收费或价格、平台支持、效果数据等信息,暂未提供。该技能以规则和判断框架为主,不包含可直接运行的代码实现。