这个项目能做什么
Toxiproxy 是一个用 Go 编写的 TCP 代理,专为混沌工程和弹性测试而设计。它允许开发人员通过拦截应用程序与其上游服务(如数据库或缓存)之间的连接,来模拟各种网络故障和条件。
其核心能力包括:
- 网络模拟 (Toxics):它提供了多种 "toxics" 来操纵数据流,包括延迟(增加延迟)、带宽限制、TCP 超时、连接重置、数据包丢失,以及将 TCP 数据切分为较小的数据包。
- 动态控制:可以通过 REST HTTP API 或命令行界面 (CLI) 实时管理代理和 toxics,从而在集成测试和单元测试期间实现确定性的篡改。
- 跨平台支持:服务器由 Go 编写,支持 Linux、macOS、Windows 和 Docker。
- 生态系统:虽然服务器与语言无关,但官方和社区驱动的客户端库已支持 Ruby、Go、Python、.NET、PHP、Node.js、Java、Haskell、Rust 和 Elixir。
- 监控:它通过 HTTP API 提供与 Prometheus 兼容的指标,用于跟踪代理的性能和行为。
评论
0 评分人数达到10人后显示
登录后参与讨论。