文章
这里收录了我发布的全部文章。
-
tower(四):tower-http-HTTP 专用中间件
tower-http 提供 20+ 个 HTTP 专用中间件 (压缩、CORS、Tracing、Header 操作等), 它们构建在 tower 的泛型 Service trait 之上, 兼容任何使用 http + http-body crate 的框架 -- axum、hyper、tonic 都能直接使用, 不需要每个框架重复实现.
-
分布式基础(二):可扩展性-垂直扩展与水平扩展
可扩展性是"加资源后处理能力能否线性提升",不是"单次请求多快"(那是性能)。Amdahl 定律决定了串行瓶颈是理论天花板——加再多机器绕不过一把全局锁。正确路径:先垂直扩展 + 缓存(ROI 最高),瓶颈出现后再水平扩展(复杂度最高),每一步都由真实数据驱动而非预测。
-
tower(三):内置中间件-限流、重试、超时与缓冲
tower 提供协议无关的通用中间件, 每个都通过 feature flag 独立启用. 核心六个: ConcurrencyLimit (并发数上限), RateLimit (速率限制), Timeout (超时), Retry (重试 + Policy trait), Buffer (mpsc 通道使 Service 可 Clone), LoadShed (过载丢弃). 它们与 tower-http 的 HTTP 专用中间件互补而非重复.
-
分布式基础(一):一致性从强一致到最终一致的权衡光谱
"一致性"在 ACID/CAP/分布式模型中是三个完全不同的概念——ACID 的 C 是数据合法性,CAP 的 C 是线性一致性,分布式一致性模型是客户端可见性保证。选型的核心问题不是"要不要一致性",而是"业务能容忍多大程度的不一致"。默认从最弱开始,有明确理由才升级。