Administrator
2023-08-04 ecca166b6c792033fd26c5aa0d6e20d4dd1ef446
redis上级缓存
1个文件已修改
13 ■■■■■ 已修改文件
trade/trade_manager.py 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
trade/trade_manager.py
@@ -47,19 +47,21 @@
# 开启购买入口
class TradeStateManager:
    __instance = None
    def __new__(cls, *args, **kwargs):
        if not cls.__instance:
            cls.__instance = super(TradeStateManager, cls).__new__(cls, *args, **kwargs)
            # 初始化设置
            # 获取交易窗口的锁
            cls.__instance.redisManager = redis_manager.RedisManager(2)
            cls.__instance.__trade_buy_state_cache = cls.__instance.is_can_buy_cache()
            cls.__instance.__trade_buy_state_cache = cls.is_can_buy()
        return cls.__instance
    redisManager = redis_manager.RedisManager(2)
    def __get_redis(self):
        return self.redisManager.getRedis()
    @classmethod
    def __get_redis(cls):
        return cls.redisManager.getRedis()
    def sync(self):
        self.__trade_buy_state_cache = self.is_can_buy_cache()
@@ -75,9 +77,10 @@
        RedisUtils.setex(self.__get_redis(), "trade_buy_state", tool.get_expire(), 0)
    # 是否可以下单
    def is_can_buy(self):
    @classmethod
    def is_can_buy(cls):
        # 默认设置为可交易
        val = RedisUtils.get(self.__get_redis(), "trade_buy_state")
        val = RedisUtils.get(cls.__get_redis(), "trade_buy_state")
        if val is None:
            return True
        if int(val) == 1: