Redis-Verbindungen nehmen auch bei Verwendung des Pools weiter zuPython

Python-Programme
Guest
 Redis-Verbindungen nehmen auch bei Verwendung des Pools weiter zu

Post by Guest »

Ich habe eine Flask-Anwendung, die Waitress als Server und Celery+RabbitMQ (als Broker) + Redis (als Backend) für die Aufgaben verwendet.
Mir ist aufgefallen, dass meine Nummer Die Anzahl der Redis-Verbindungen nimmt auch beim Einrichten eines Pools für Redis weiter zu. Die einzige Möglichkeit, sie zu löschen, besteht darin, die Anwendung zu beenden (oder in meinem Fall für Heroku die Dynos neu zu starten).
Hier ist ein Beispiel des aktuellen Codes:

Code: Select all

CLOUDAMQP_URL = os.environ.get("CLOUDAMQP_URL") or os.environ.get("RABBITMQ_URL")
HEROKU = os.environ['HEROKU']

if HEROKU == "production":
url = urlparse(os.environ.get('REDISCLOUD_URL'))
backend_url = f"redis://{url.username}:{url.password}@{url.hostname}:{url.port}"
else:
backend_url = "redis://localhost:6379/0"

redis_client = redis.Redis.from_url(backend_url)
broker_url = CLOUDAMQP_URL

app = Celery('chatbot_tasks', broker=broker_url, backend=backend_url)

app.conf.task_serializer = 'json'
app.conf.result_serializer = 'json'
app.conf.broker_pool_limit = 0
Was könnte dieses Problem verursachen?
Ich habe versucht, einen Pool als solchen einzurichten:

Code: Select all

backend_url = os.environ['REDIS_URL']
pool = ConnectionPool.from_url(backend_url)
Aber keine Lösung...

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post