python-betterproto
aioredis
Our great sponsors
python-betterproto | aioredis | |
---|---|---|
2 | 2 | |
1,378 | 2,269 | |
- | - | |
7.2 | 0.0 | |
12 days ago | about 1 year ago | |
Python | Python | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
python-betterproto
- Q: Best options for generating python?
-
protogen: write protoc plugins in Python
For context: in a project I was working on recently, we relied heavily on Protocol buffers. All our internal and external services expose a GRPC interface. Also the client libraries that are used by the end users rely on the Proto service interfaces. However, shipping simply the generated code that comes with the official protoc Python plugin or any other standardised Python protoc plugin (like betterproto) was not sufficient for us. We wanted certain modifications and additions to the generated client code like service clients that would automatically pick up credentials/service account files, a more Pythonic handling for requests that work with pagination or long running operations etc.
aioredis
-
Pooling in aioredis may be dangerous
First, it was aioredis library. We are using sentinel based client because with this we can achieve failover easily. Aioredis spawn pool of connections, that transparently reconnects (and here third thing — FOREVER, hello DDOS) to our sentinel nodes, and then to master node. It supposed to do so. Also, we found that if you are not limiting maximum connections count, library will do it for you and set it as 2 ** 31 (here you can see it) — this is fourth thing. Furthermore, pool in our version (2.0.1) not closing automatically, and it makes the problem worse.
-
Tips using Redis with FastAPI
I'm hoping to leverage Redis with my project, and I was curious as to if anyone had any general pointers as to how best to manage the DB connection. I'm using aioredis such that I can leverage the async functionality, but I haven't been very happy with the library's documentation surrounding how best to leverage the connection pool. Most of the examples create and tear down the pool immediately without showing how best to manage its lifespan.
What are some alternatives?
protogen-python - The protogen package makes it easy to write protoc plugins in Python
pottery - Redis for humans. 🌎🌍🌏
steam.py - An async python wrapper to interact with the Steam API and its CMs
uvloop - Ultra fast asyncio event loop.
pfun - Functional, composable, asynchronous, type-safe Python.
fastapi - FastAPI framework, high performance, easy to learn, fast to code, ready for production
StringEncrypt-Python - StringEncrypt allows you to encrypt strings and files using a randomly generated algorithm, generating a unique decryption code (so-called polymorphic code) each time in the selected programming language.
Dependency Injector - Dependency injection framework for Python
fastapi-redis-cache - A simple and robust caching solution for FastAPI that interprets request header values and creates proper response header values (powered by Redis)
redis-py-sansio - A sansio-first approach to a Python Redis Client.
faust - Python Stream Processing. A Faust fork