返回顶部
s

senior-backend高级后端开发

Designs and implements backend systems including REST APIs, microservices, database architectures, authentication flows, and security hardening. Use when the user asks to "design REST APIs", "optimize database queries", "implement authentication", "build microservices", "review backend code", "set up GraphQL", "handle database migrations", or "load test APIs". Covers Node.js/Express/Fastify development, PostgreSQL optimization, API security, and backend architecture patterns.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 2.1.1
安全检测
已通过
2,864
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

senior-backend

高级后端工程师

后端开发模式、API设计、数据库优化和安全实践。



快速开始

bash

从OpenAPI规范生成API路由


python scripts/api_scaffolder.py openapi.yaml --framework express --output src/routes/

分析数据库模式并生成迁移文件

python scripts/databasemigrationtool.py --connection postgres://localhost/mydb --analyze

对API端点进行负载测试

python scripts/apiloadtester.py https://api.example.com/users --concurrency 50 --duration 30

工具概述

1. API脚手架生成器

根据模式定义生成API路由处理器、中间件和OpenAPI规范。

输入: OpenAPI规范(YAML/JSON)或数据库模式
输出: 路由处理器、验证中间件、TypeScript类型

用法:
bash

从OpenAPI规范生成Express路由


python scripts/api_scaffolder.py openapi.yaml --framework express --output src/routes/

输出:生成了12个路由处理器、验证中间件和TypeScript类型

从数据库模式生成

python scripts/api_scaffolder.py --from-db postgres://localhost/mydb --output src/routes/

从现有路由生成OpenAPI规范

python scripts/api_scaffolder.py src/routes/ --generate-spec --output openapi.yaml

支持的框架:

  • - Express.js(--framework express)
  • Fastify(--framework fastify)
  • Koa(--framework koa)



2. 数据库迁移工具

分析数据库模式,检测变更,并生成支持回滚的迁移文件。

输入: 数据库连接字符串或模式文件
输出: 迁移文件、模式差异报告、优化建议

用法:
bash

分析当前模式并建议优化


python scripts/databasemigrationtool.py --connection postgres://localhost/mydb --analyze

输出:缺失索引、N+1查询风险和建议的迁移文件

从模式差异生成迁移

python scripts/databasemigrationtool.py --connection postgres://localhost/mydb \ --compare schema/v2.sql --output migrations/

预演迁移

python scripts/databasemigrationtool.py --connection postgres://localhost/mydb \ --migrate migrations/20240115adduser_indexes.sql --dry-run

3. API负载测试工具

执行可配置并发数的HTTP负载测试,测量延迟百分位数和吞吐量。

输入: API端点URL和测试配置
输出: 包含延迟分布、错误率、吞吐量指标的性能报告

用法:
bash

基本负载测试


python scripts/apiloadtester.py https://api.example.com/users --concurrency 50 --duration 30

输出:吞吐量(请求/秒)、延迟百分位数(P50/P95/P99)、错误计数和扩展建议

使用自定义头部和请求体进行测试

python scripts/apiloadtester.py https://api.example.com/orders \ --method POST \ --header Authorization: Bearer token123 \ --body {product_id: 1, quantity: 2} \ --concurrency 100 \ --duration 60

比较两个端点

python scripts/apiloadtester.py https://api.example.com/v1/users https://api.example.com/v2/users \ --compare --concurrency 50 --duration 30

后端开发工作流程

API设计工作流程

在设计新API或重构现有端点时使用。

步骤1:定义资源和操作
yaml

openapi.yaml


openapi: 3.0.3
info:
title: 用户服务API
version: 1.0.0
paths:
/users:
get:
summary: 列出用户
parameters:
- name: limit
in: query
schema:
type: integer
default: 20
post:
summary: 创建用户
requestBody:
required: true
content:
application/json:
schema:
$ref: #/components/schemas/CreateUser

步骤2:生成路由脚手架
bash
python scripts/api_scaffolder.py openapi.yaml --framework express --output src/routes/

步骤3:实现业务逻辑
typescript
// src/routes/users.ts(生成后自定义)
export const createUser = async (req: Request, res: Response) => {
const { email, name } = req.body;

// 添加业务逻辑
const user = await userService.create({ email, name });

res.status(201).json(user);
};

步骤4:添加验证中间件
bash

验证从OpenAPI模式自动生成


src/middleware/validators.ts 包含:


- 请求体验证


- 查询参数验证


- 路径参数验证

步骤5:生成更新的OpenAPI规范
bash
python scripts/api_scaffolder.py src/routes/ --generate-spec --output openapi.yaml



数据库优化工作流程

在查询缓慢或数据库性能需要改进时使用。

步骤1:分析当前性能
bash
python scripts/databasemigrationtool.py --connection $DATABASE_URL --analyze

步骤2:识别慢查询
sql
-- 检查查询执行计划
EXPLAIN ANALYZE SELECT * FROM orders
WHERE user_id = 123
ORDER BY created_at DESC
LIMIT 10;

-- 查找:Seq Scan(差),Index Scan(好)

步骤3:生成索引迁移
bash
python scripts/databasemigrationtool.py --connection $DATABASE_URL \
--suggest-indexes --output migrations/

步骤4:测试迁移(预演)
bash
python scripts/databasemigrationtool.py --connection $DATABASE_URL \
--migrate migrations/add_indexes.sql --dry-run

步骤5:应用并验证
bash

应用迁移


python scripts/databasemigrationtool.py --connection $DATABASE_URL \
--migrate migrations/add_indexes.sql

验证改进

python scripts/databasemigrationtool.py --connection $DATABASE_URL --analyze

安全加固工作流程

在准备API上线或安全审查后使用。

步骤1:审查认证设置
typescript
// 验证JWT配置
const jwtConfig = {
secret: process.env.JWT_SECRET, // 必须来自环境变量,绝不硬编码
expiresIn: 1h, // 短生命周期令牌
algorithm: RS256 // 优先使用非对称算法
};

步骤2:添加速率限制
typescript
import rateLimit from express-rate-limit;

const apiLimiter = rateLimit({
windowMs: 15 60 1000, // 15分钟
max: 100, // 每个窗口100个请求
standardHeaders: true,
legacyHeaders: false,
});

app.use(/api/, apiLimiter);

步骤3:验证所有输入
typescript
import { z } from zod;

const CreateUserSchema = z.object({
email: z.string().email().max(255),
name: z.string().min(1).max(100),
age: z.number().int().positive().optional()
});

// 在路由处理器中使用
const data = CreateUserSchema.parse(req.body);

步骤4:使用攻击模式进行负载测试
bash

测试速率限制


python scripts/apiloadtester.py https://api.example.com/login \
--concurrency 200 --duration 10 --expect-rate-limit

测试输入验证

python scripts/apiloadtester.py https://api.example.com/users \ --method POST \ --body {email: not-an-email} \ --expect-status 400

步骤5:审查安全头部
typescript
import helmet from helmet;

app.use(helmet({
contentSecurityPolicy: true,
crossOriginEmbedderPolicy: true,
crossOriginOpenerPolicy: true,
crossOriginResourcePolicy: true,
hsts: { maxAge: 31536000, includeSubDomains: true },
}));



参考文档


文件内容使用场景
references/apidesignpatterns.mdREST与GraphQL、版本控制、错误处理、分页设计新API
references/databaseoptimizationguide.md
索引策略、查询优化、N+1解决方案 | 修复慢查询 |
| references/backendsecuritypractices.md | OWASP Top 10、认证模式、输入验证 | 安全加固 |


常见模式快速参考

REST API响应格式

json { data: { id: 1, name: John }, meta: {

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 senior-backend-1776378090 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 senior-backend-1776378090 技能

通过命令行安装

skillhub install senior-backend-1776378090

下载

⬇ 下载 senior-backend v2.1.1(免费)

文件大小: 40.58 KB | 发布时间: 2026-4-17 15:19

v2.1.1 最新 2026-4-17 15:19
v2.1.1: optimization, reference splits

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部