|
|
@@ -26,8 +26,20 @@ class OrderBookerGCO:
|
|
|
self.m_tasks: List[Task] = []
|
|
|
self.m_lock = threading.RLock()
|
|
|
self.m_stop_event = threading.Event()
|
|
|
- self.redis_com = redis.Redis(**redis_conf)
|
|
|
- self.redis_sub = redis.Redis(**redis_conf)
|
|
|
+
|
|
|
+ redis_common_kwargs = {
|
|
|
+ **redis_conf,
|
|
|
+ "socket_timeout": 5,
|
|
|
+ "socket_connect_timeout": 5,
|
|
|
+ # 会自动发送 PING
|
|
|
+ "health_check_interval": 15,
|
|
|
+ # TCP KeepAlive
|
|
|
+ "socket_keepalive": True,
|
|
|
+ "retry_on_timeout": True,
|
|
|
+ "decode_responses": False,
|
|
|
+ }
|
|
|
+ self.redis_com = redis.Redis(**redis_common_kwargs)
|
|
|
+ self.redis_sub = redis.Redis(**redis_common_kwargs)
|
|
|
self.m_pending_order_by_queue: Dict[str, int] = {}
|
|
|
self.m_last_spawn_times: Dict[str, float] = {}
|
|
|
self.m_task_data_cache: Dict[str, dict] = {}
|