HTTP框架修炼之道 | 青训营笔记

67 阅读1分钟

协议内容

1685781961174.png

请求流程

1685782070395.png

HTTP框架的设计

分层设计

1685782179389.png

  • 高内聚 低耦合
  • 易复用
  • 高扩展性

中间件设计

中间件需求

  • 配合 Handler 实现一个完整的请求处理生命周期
  • 拥有预处理逻辑与后处理逻辑
  • 可以注册多中间件
  • 对上层模块用户逻辑模块易用

洋葱模型

1685782363142.png

适用场景: 日志记录 性能统计 安全控制 事务处理 异常处理

路由设计

框架路由实际上就是为 URL 匹配对应的处理函数 (Handlers)

  • 静态路由: /a/b/c、/a/b/d
  • 参数路由: /a/:id/c (/a/b/c,/a/d/c)、/all
  • 路由修复: /a/b <-> /a/b/
  • 冲突路由以及优先级: /a/b、/:id/c
  • 匹配 HTTP 方法
  • 多处理函数:方便添加中间件