Hyx

Hyx

Resiliency toolkit for your modern Python microservices

2 followers

A set of well-known stability patterns that are commonly needed when you build microservice-based applications. Hyx is meant to be Hystrix (Java), resilience4j (Java) or Polly (C#) but for the Python world.
Hyx gallery image
Hyx gallery image
Hyx gallery image
Hyx gallery image
Hyx gallery image
Hyx gallery image
Hyx gallery image
Free
Launch Team
Flowstep
Flowstep
Generate real UI in seconds
Promoted

What do you think? …

Roman Glushko
Despite having many separate libraries in PyPi that try to implement some of the patterns, few would be considered production-ready and practically useful. Most are missing important features, configurations and limits that make them inconvenient or dangerous to use in production under the scale. This is the problem that Hyx is trying to solve. Let's implement all industry-proven stability patterns in a safe production-ready way by incorporating experience shared by industry leaders like Google, Amazon, Neflix, Microsoft. So you don't need to think twice what library to install to improve #resiliency of your system. At this point, the project has been inited with the basic implementations and docs for the following components (let's call it an MVP 😌): - retries (with several backoff and jitter strategies) - consecutive circuit breaker (more to come) - timeouts - bulkhead (concurrency limiter) - token bucket-based rate limiter (more to come) - fallback On the way to make it production ready, I plan to add support for metrics dispatching (via OpenTelemetry, Prometheus and StatsD), implement more variants of circuit breakers, rate limiters, etc, make existing components more ready-to-use and tailored to the common use cases, provide examples and integrations with popular frameworks (like FastAPI/Starlette, Flask, etc) Now I would like to measure our interest as community in such a project and get some early feedback on what I can do/which things to prioritise to make this effort useful for your projects and usecases. So feel free to raise your hand if the project seems to be useful and give your feedback, stars and hopefully some positive vibes!