import redis import os import json try: redis_client = redis.Redis( host=os.getenv("REDIS_HOST", "localhost"), port=int(os.getenv("REDIS_PORT", 6379)), username=os.getenv("REDIS_USERNAME"), password=os.getenv("REDIS_PASSWORD"), decode_responses=True ) # Test connection redis_client.ping() except Exception as e: redis_client = None print(f"Redis connection failed: {e}") def get_cached_result(query): """Retrieve cached result for a query""" if not redis_client: return None try: cached = redis_client.get(f"query:{query}") return cached if cached else None except Exception: return None def cache_result(query, result): """Cache result for a query for 24 hours""" if not redis_client: return False try: redis_client.setex(f"query:{query}", 86400, result) return True except Exception: return False