2023-02-28 13:52:51 +08:00
|
|
|
import redis as redis
|
|
|
|
|
2023-03-07 10:13:13 +08:00
|
|
|
REDIS_HOST = "127.0.0.1"
|
2023-02-28 13:52:51 +08:00
|
|
|
REDIS_PORT = 6379
|
|
|
|
|
|
|
|
|
|
|
|
class RedisPool:
|
|
|
|
def __init__(self, host: str, port: int, password: str = None):
|
|
|
|
self.host = host
|
|
|
|
self.port = port
|
|
|
|
self.password = password if password else None
|
|
|
|
self.redis_pool: redis.ConnectionPool = None
|
|
|
|
self.conn: redis.Redis = None
|
|
|
|
|
|
|
|
def connect(self, max_connections=10):
|
|
|
|
if self.password:
|
|
|
|
self.redis_pool = redis.ConnectionPool(host=self.host, port=self.port,
|
|
|
|
decode_responses=True,
|
|
|
|
max_connections=max_connections)
|
|
|
|
else:
|
|
|
|
self.redis_pool = redis.ConnectionPool(host=self.host, port=self.port,
|
|
|
|
password=self.password,
|
|
|
|
decode_responses=True,
|
|
|
|
max_connections=max_connections)
|
|
|
|
self.conn = self.get_redis_client()
|
|
|
|
|
|
|
|
def get_redis_client(self):
|
|
|
|
conn = redis.Redis(connection_pool=self.redis_pool, decode_responses=True)
|
|
|
|
return conn
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
redis_pool = RedisPool(host=REDIS_HOST, port=REDIS_PORT)
|
|
|
|
redis_pool.connect()
|