Об этом проекте
Toxiproxy — это TCP-прокси на языке Go, разработанный для хаос-инжиниринга и тестирования отказоустойчивости. Он позволяет разработчикам имитировать различные сетевые сбои и условия, перехватывая соединения между приложением и его вышестоящими сервисами (такими как базы данных или кэши).
Ключевые возможности включают:
- Симуляция сети (Toxics): предоставляется несколько «токсиков» для манипулирования потоком данных, включая задержку (latency), ограничение пропускной способности, тайм-ауты TCP, сбросы соединений, потерю пакетов и разделение данных TCP на более мелкие пакеты.
- Динамическое управление: прокси и токсиками можно управлять в режиме реального времени через REST HTTP API или интерфейс командной строки (CLI), что обеспечивает детерминированное вмешательство во время интеграционных и модульных тестов.
- Кроссплатформенная поддержка: сервер написан на Go и доступен для Linux, macOS, Windows и Docker.
- Экосистема: хотя сервер не зависит от языка программирования, существуют официальные и поддерживаемые сообществом клиентские библиотеки для Ruby, Go, Python, .NET, PHP, Node.js, Java, Haskell, Rust и Elixir.
- Мониторинг: через HTTP API предоставляются метрики, совместимые с Prometheus, для отслеживания производительности и поведения прокси.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.