PyrateLimiter V3 release
Opened this issue · 0 comments
vutran1710 commented
Improvements & features
Phase I
- Much improved performance (better algorithm, better rate observations, very fast on consuming data)
- Better software design: much simpler, more extensible and easier to implement custom/extra logic without hacking around
- Out-of-the-box workable with both async & sync methods
- Decorator ready (both async & sync)
- Delay processing
- RedisAsyncBucket
- Multithreaded test
- Creating bucket at run time
- Bucket leak background-task
- Docs
- Changelog
- Release
Phase II
- Dynamic changing rate-limit for bucket during run time
- External rates store
- FileLock for SQLite
- Multi-process testing
- DynamoDB
Phase III
- Context
- Negative weight
Performance
Inserting 10k items to a single bucket, using different backends - running synchronouly with a for-loop
# InMemoryBucket
Performance test: insert 10k items 0.17364001274108887(secs)
# RedisBucket
Performance test: insert 10k items 5.8455188274383545(secs)
# SQLiteBucket
Performance test: insert 10k items 3.9313011169433594(secs)