A distributed funnel system based on redis, management system included.
A distributed funnel middleware based on redis, management ui included.
You can install
redis-funnel simply with
pip install redis-funnel
Suppose you have a function named
dummy runs across many processes, and executes very quickly:
import time def dummy(): return time.time() while True: print dummy()
you wants to restrict its execution speed with a limited qps, e.g. 100:
import time from redis_funnel.distributed import qps_factory qps = qps_factory(host="localhost", port=6379, db=0) @qps("1000001", "test", 100) def dummy(): return time.time() while True: print dummy()
Warning: a redis server should be started first and listening on localhost:6379.
Also, if function
dummy just runs in a single process, then you can just use
qps decorator based on local memory, in which case you don't need a redis server running first:
import time from redis_funnel.local import qps @qps(100) def dummy(): return time.time() while True: print dummy()
redis-funnel is developed and maintained by fanwei.zeng (firstname.lastname@example.org). It can be found here:
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size redis-funnel-0.0.1.tar.gz (8.0 kB)||File type Source||Python version None||Upload date||Hashes View|