Skip to content

Commit 495046c

Browse files
authored
Fix redis pubsub socket timeout (#1206)
1 parent ffaa128 commit 495046c

3 files changed

Lines changed: 6 additions & 2 deletions

File tree

backend/common/cache/pubsub.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ async def subscribe_and_listen() -> None: # noqa: C901
3838

3939
try:
4040
# 使用独立连接
41-
pubsub_client = RedisCli()
41+
pubsub_client = RedisCli(socket_timeout=None)
4242
pubsub = pubsub_client.pubsub()
4343
await pubsub.subscribe(settings.CACHE_PUBSUB_CHANNEL)
4444

backend/common/socketio/server.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,10 @@
1414
sio = socketio.AsyncServer(
1515
client_manager=socketio.AsyncRedisManager(
1616
f'redis://:{urllib.parse.quote(settings.REDIS_PASSWORD)}@{settings.REDIS_HOST}:{settings.REDIS_PORT}/{settings.REDIS_DATABASE}',
17+
redis_options={
18+
'socket_timeout': None,
19+
'socket_connect_timeout': settings.REDIS_TIMEOUT,
20+
},
1721
),
1822
async_mode='asgi',
1923
cors_allowed_origins=settings.CORS_ALLOWED_ORIGINS,

backend/database/redis.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ def __init__(
1616
port: int = settings.REDIS_PORT,
1717
password: str = settings.REDIS_PASSWORD,
1818
db: int = settings.REDIS_DATABASE,
19-
socket_timeout: int = settings.REDIS_TIMEOUT,
19+
socket_timeout: int | None = settings.REDIS_TIMEOUT,
2020
socket_connect_timeout: int = settings.REDIS_TIMEOUT,
2121
*,
2222
socket_keepalive: bool = True,

0 commit comments

Comments
 (0)