jerry 1 Minggu lalu
induk
melakukan
8b3bb6d16e
2 mengubah file dengan 25 tambahan dan 2 penghapusan
  1. 11 0
      booker_builtin.py
  2. 14 2
      booker_order.py

+ 11 - 0
booker_builtin.py

@@ -26,6 +26,17 @@ class BuiltinBookerGCO:
         self.m_tasks: List[Task] = []
         self.m_lock = threading.RLock()
         self.m_stop_event = threading.Event()
+        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_conf)
         self.redis_sub = redis.Redis(**redis_conf)
         self.m_pending_builtin = 0

+ 14 - 2
booker_order.py

@@ -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] = {}