Esempio n. 1
0
    def purge_redislite_cache(self):
        """
        Purges redislite cache in primary DB periodically. This will force a cache refresh, and it is
        convenient for cases where you cannot securely run shared Redis (ie: AWS AppRunner)
        """
        if not self.get("redis.use_redislite"):
            return
        from consoleme.lib.redis import RedisHandler

        red = RedisHandler().redis_sync()
        while True:
            red.flushdb()
            time.sleep(self.get("redis.purge_redislite_cache_interval", 1800))
Esempio n. 2
0
    def purge_redislite_cache(self):
        """
        Purges redislite cache in primary DB periodically. This will force a cache refresh, and it is
        convenient for cases where you cannot securely run shared Redis (ie: AWS AppRunner)
        """
        if not self.get("redis.use_redislite"):
            return
        from consoleme.lib.redis import RedisHandler

        red = RedisHandler().redis_sync()
        while threading.main_thread().is_alive():
            red.flushdb()
            # Wait till main exit flag is set OR a fixed timeout
            if main_exit_flag.wait(timeout=self.get(
                    "redis.purge_redislite_cache_interval", 1800)):
                break