Architecture Patterns
Stateful vs Stateless
有状态与无状态架构的取舍
Stateful system 会保存 session 或上下文,后续请求可以延续状态。
Stateless system 不保存状态,每次请求都带齐必要信息。

Trade-off 快览
- Stateful:体验连贯、逻辑简单,但扩展与 failover 更复杂
- Stateless:易 scale、易负载均衡,但每次请求成本更高(需要携带 context)
示例
- 购物车:stateful(保存用户选品)
- REST API:常见 stateless,每次请求带 token + params
设计建议
- 尽量把状态外置到 cache / database(比如 Redis),让应用层保持 stateless
- stateful 适合强 session 依赖场景,但要考虑 sticky sessions / session store