sql >> Database >  >> NoSQL >> Redis

Django Selderij krijgt taaktelling

Hier leest u hoe u het aantal berichten in een wachtrij kunt krijgen met behulp van selderij die broker-onafhankelijk is.

Door connection_or_acquire te gebruiken , kunt u het aantal open verbindingen met uw makelaar minimaliseren door gebruik te maken van de interne verbindingspooling van selderij.

celery = Celery(app)

with celery.connection_or_acquire() as conn:
    conn.default_channel.queue_declare(
        queue='my-queue', passive=True).message_count

U kunt Celery ook uitbreiden om deze functionaliteit te bieden:

from celery import Celery as _Celery


class Celery(_Celery)

    def get_message_count(self, queue):
        '''
        Raises: amqp.exceptions.NotFound: if queue does not exist
        '''
        with self.connection_or_acquire() as conn:
            return conn.default_channel.queue_declare(
                queue=queue, passive=True).message_count


celery = Celery(app)
num_messages = celery.get_message_count('my-queue')


  1. Match met subtekenreeks in mongodb-aggregatie

  2. dial tcp [::1]:6397:connectex:Er kon geen verbinding worden gemaakt omdat de doelcomputer dit actief weigerde

  3. mongodb TTL verwijdert geen documenten

  4. Alle collecties in een mongo-database weergeven in een nodejs-script