blob: 18fbca277d50ae249de78aa16028febb441528b0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import asyncio
import os
from asyncio import get_running_loop
from redis.asyncio import ConnectionPool, Redis
class RedisConnectionPool:
instance: 'RedisConnectionPool' = None
def __init__(self):
self.pool = ConnectionPool.from_url(os.environ.get('REDIS_URL'))
@classmethod
def get_connection(cls) -> Redis:
if cls.instance is None:
cls.instance = RedisConnectionPool()
return Redis(connection_pool=cls.instance.pool)
|