技能简介
后端架构(backend-patterns)提供后端架构模式、API 设计、数据库优化和服务器端最佳实践。适用于 Node.js、Express 和 Next.js API 路由,帮助构建可扩展的服务器端应用。
能做什么
- 设计 RESTful API 结构
- 实现 Repository 模式抽象数据访问
- 使用 Service 层分离业务逻辑
- 应用中间件模式处理请求/响应
- 优化数据库查询性能
- 防止 N+1 查询问题
- 实现事务模式保证数据一致性
- 设计 Redis 缓存层
使用说明
安装 Skill:
通过 ClawHub 安装:
clawhub install backend-patterns
RESTful API 结构:
资源型 URL:GET /api/markets(列表)、GET /api/markets/:id(详情)、POST /api/markets(创建)、PUT /api/markets/:id(替换)、PATCH /api/markets/:id(更新)、DELETE /api/markets/:id(删除)
查询参数:GET /api/markets?status=active&sort=volume&limit=20&offset=0
Repository 模式:
抽象数据访问逻辑,定义接口如 findAll、findById、create、update、delete,然后实现具体类如 SupabaseMarketRepository。
Service 层模式:
将业务逻辑与数据访问分离,在 Service 中实现业务规则,通过 Repository 获取数据。
中间件模式:
使用 withAuth 等中间件包装处理器,在请求处理前后执行认证等操作。
数据库优化:
只选择需要的列(非 SELECT *)、使用过滤和排序、限制返回数量。
防止 N+1 查询:批量获取关联数据,使用 Map 映射而非循环查询。
事务模式:使用 Supabase RPC 或数据库事务保证多表操作原子性。
缓存策略:实现 CachedMarketRepository 包装层,使用 Redis 缓存热点数据。
输入与输出
| 项目 | 内容 |
|---|---|
| 输入 | API端点设计、数据库查询、业务逻辑、缓存策略 |
| 输出 | RESTful API、Repository、Service层、中间件、优化查询 |
| 适用人群 | Node.js后端开发者、构建API的工程师、优化性能的团队 |
| 不包含 | 前端代码、部署配置、监控日志系统 |
见下方输入与输出表格。
风险提示
- 模式需要根据具体业务场景调整
- 过度抽象可能增加复杂度
- 缓存需要处理一致性问题
- 事务使用不当可能影响性能
- 原始页信息不足:缺少完整的代码示例和项目初始化说明
来源信息
原始链接:https://github.com/openclaw/skills/tree/main/skills/charmmm718/backend-patterns/SKILL.md
来源类型:GitHub
