import subprocess import httpx def main(): with httpx.Client(base_url="http://127.0.0.1:18000", timeout=10) as client: assert client.get("/health/ready").status_code == 200 try: subprocess.run(["docker", "compose", "stop", "redis-state"], check=True) assert client.get("/health/ready").status_code == 503 assert client.get("/health/live").status_code == 200 finally: subprocess.run(["docker", "compose", "up", "-d", "--wait", "redis-state"], check=True) assert client.get("/health/ready").status_code == 200 print("持久 Redis 停止、503 响应和恢复验证通过") if __name__ == "__main__": main()