关于 nodejs-best-practices
nodejs-best-practices 是 Nearform 维护的 Node.js 与 Fastify 开发指南,面向编写、审查和重构相关应用的开发者。指南按影响优先级组织 48 条规则,涵盖性能、安全、API、错误处理及监控等主题。
主要功能
- 01涵盖 8 个类别的 48 条规则
- 02按影响程度排列规则优先级
- 03包含 Node.js 与 Fastify 实践
- 04提供错误与正确代码示例
- 05可查阅独立规则文件和汇编文档
适用场景
- 01设计新的 Node.js API 或 Fastify 路由
- 02审查数据库操作及 API 性能
- 03排查安全、错误处理和日志问题
- 04重构应用或优化 API 响应时间
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ nearform/ agent-skills --skill nodejs-best-practices安装后在 Claude Code 中输入/nodejs-best-practices确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
AGENTS.mdmetadata.jsonREADME.mdrules/_sections.md_template.mdapi-connection-pooling.mdapi-n-plus-one.mdapi-pagination.mdapi-query-optimization.mdapi-rest-design.mdapi-transactions.mdasync-backpressure.mdasync-error-handling.mdasync-parallel.mdasync-queue-management.mdasync-rate-limiting.mdasync-timeout.mdcache-database.mdcache-http-headers.mdcache-invalidation.mdcache-lru.mdcache-redis.mdcache-stale-revalidate.mdcode-config-management.mdcode-dependency-injection.mdcode-env-variables.mdcode-module-structure.mdcode-testing.mdcode-typescript.mderror-async-errors.md详细介绍
Node.js 最佳实践
面向 Node.js 和 Fastify 应用的综合指南,由 Nearform 维护。包含 8 个类别中的 48 条规则,并按影响程度排序,以指导自动重构和代码生成。
适用场景
在以下情况下参考这些指南:
- 编写新的 Node.js API 或 Fastify 路由
- 实现数据库操作
- 检查代码中的性能或安全问题
- 重构现有的 Node.js/Fastify 代码
- 优化 API 响应时间
- 处理错误和日志记录
- 设置监控和可观测性
按优先级划分的规则类别
| 优先级 | 类别 | 影响 | 前缀 |
|---|---|---|---|
| 1 | 性能与安全 | 严重 | perf- |
| 2 | API 设计与数据库 | 严重 | api- |
| 3 | 错误处理与日志记录 | 高 | error- |
| 4 | Fastify 优化 | 中高 | fastify- |
| 5 | 异步模式 | 中 | async- |
| 6 | 缓存与状态 | 中 | cache- |
| 7 | 代码组织 | 中低 | code- |
| 8 | 监控与诊断 | 低 | monitor- |
快速参考
1. 性能与安全(严重)
perf-block-event-loop- 检测并防止事件循环阻塞perf-security-headers- 实施必要的安全标头perf-input-validation- 验证并清理所有输入perf-streaming- 使用流处理大型负载perf-memory-leaks- 防止内存泄漏perf-compression- 实施压缩策略
2. API 设计与数据库(严重)
api-rest-design- 遵循 RESTful 设计原则api-pagination- 实施高效分页api-connection-pooling- 使用连接池api-query-optimization- 优化数据库查询api-n-plus-one- 防止 N+1 查询问题api-transactions- 正确处理事务
3. 错误处理与日志记录(高)
error-middleware- 集中处理错误error-structured-logging- 使用结构化日志记录(Pino)error-async-errors- 正确处理异步错误error-sensitive-data- 不要在错误中泄露敏感数据error-unhandled-rejection- 处理未处理的拒绝error-request-logging- 高效记录请求日志
4. Fastify 优化(中高)
fastify-schema-validation- 使用 JSON 模式验证fastify-hooks- 优化钩子用法fastify-plugins- 设计可复用的插件fastify-decorators- 有效使用装饰器fastify-serialization- 优化 JSON 序列化fastify-content-type- 正确处理内容类型
5. 异步模式(中)
async-parallel- 并行执行相互独立的操作async-error-handling- 妥善处理异步错误async-backpressure- 处理流中的背压async-rate-limiting- 实施速率限制async-queue-management- 使用队列处理后台任务async-timeout- 为操作设置超时
6. 缓存与状态(中)
cache-lru- 使用内存中的 LRU 缓存cache-redis- 实施 Redis 缓存cache-http-headers- 使用 HTTP 缓存标头cache-invalidation- 实施缓存失效机制cache-stale-revalidate- 使用 stale-while-revalidate 模式cache-database- 缓存数据库查询
7. 代码组织(中低)
code-module-structure- 按功能组织代码code-dependency-injection- 使用依赖注入code-config-management- 正确管理配置code-env-variables- 处理环境变量code-testing- 编写可测试的代码code-typescript- 有效使用 TypeScript
8. 监控与诊断(低)
monitor-health-check- 实施运行状况检查端点monitor-metrics- 收集应用指标monitor-apm- 集成 APM 工具monitor-memory- 监控内存使用情况monitor-cpu- 分析 CPU 使用情况monitor-distributed-tracing- 实施分布式追踪
使用方法
阅读各个规则文件,了解详细说明和代码示例:
rules/perf-block-event-loop.md
rules/api-n-plus-one.md
rules/_sections.md
每个规则文件都包含:
- 简要说明其重要性
- 错误代码示例及说明
- 正确代码示例及说明
- 补充背景信息和参考资料
完整编译文档
如需查看包含所有展开规则的完整指南:AGENTS.md
评论
支持 Markdown