Circuitbreaker pattern for gevent apps
Project description
gevent-breaker
==============
[![Build Status](https://travis-ci.org/daroot/gevent-breaker.svg?branch=1.0.0)](https://travis-ci.org/daroot/gevent-breaker)
Circuit Breaker pattern for gevent apps.
Install
-------
$ pip install gevent-breaker
Usage
-----
```python
from gevent_breaker import circuit_breaker, CircuitBroken
while True:
try:
# After enough errors (5 by default), raise a CircuitBroken
with circuit_breaker("breaker1"):
1/0
except ZeroDivisionError:
print("Got an exception!")
except CircuitBroken:
print("Too many errors!")
break
try:
# Don't raise a CircuitBroken, instead just wait for a period
# of time (default 60s) before trying again.
with circuit_breaker("breaker2", block=True):
1/0
except ZeroDivisionError:
print("Got an exception")
```
==============
[![Build Status](https://travis-ci.org/daroot/gevent-breaker.svg?branch=1.0.0)](https://travis-ci.org/daroot/gevent-breaker)
Circuit Breaker pattern for gevent apps.
Install
-------
$ pip install gevent-breaker
Usage
-----
```python
from gevent_breaker import circuit_breaker, CircuitBroken
while True:
try:
# After enough errors (5 by default), raise a CircuitBroken
with circuit_breaker("breaker1"):
1/0
except ZeroDivisionError:
print("Got an exception!")
except CircuitBroken:
print("Too many errors!")
break
try:
# Don't raise a CircuitBroken, instead just wait for a period
# of time (default 60s) before trying again.
with circuit_breaker("breaker2", block=True):
1/0
except ZeroDivisionError:
print("Got an exception")
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
gevent-breaker-1.0.0.tar.gz
(4.3 kB
view hashes)
Built Distribution
Close
Hashes for gevent_breaker-1.0.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ae1e0694b1324b69ba16812058bc260b1dd3e4a71b6feefe02f36583dea597f3 |
|
MD5 | 0159c224cba62ba5fdb9c3d80fad4859 |
|
BLAKE2b-256 | ae72b237b68ac096811e5aac8d6afa721f1a584735bb2ea1c84fc4824ad5e267 |