Wir haben eine Java-Anwendung, die Nachrichten von Rabbitmq mit Spring AMQP erhält. Bei einigen Warteschlangen nimmt die Anzahl der Verbraucher nicht zu, was zu einer langsameren Nachrichtenübermittlungsrate führt. z.B. obwohl der maximale Verbraucher auf 50 eingestellt ist, blieb die Anzahl der Verbraucher für die meiste Zeit 6 für die Last von 9000 Nachrichten.RabbitMQ-Konsumenten addieren sich nicht
Dies ist jedoch bei anderen Warteschlangen nicht der Fall. i..e Verbraucher zählen bis 35 für andere Warteschlangen erreicht.
Wir verwenden die setMaxConcurrentConsumers-API von SimpleMessageListenerContainer zum Festlegen von maximalen Konsumenten.
Kann mir bitte jemand helfen, das zu verstehen?
Konfiguration:
Anzahl der gleichzeitigen Verbraucher: 4
Anzahl von max gleichzeitige Verbraucher: 50
Danke für deine Antwort Gary! Ich habe die Frage mit der von uns verwendeten Konfiguration aktualisiert. Wenn sich 9000 Nachrichten in der Warteschlange befinden, sollten nicht mehr Nutzer hinzugefügt werden, um die Nachrichtenzustellungsrate zu erhöhen? Bei 6 Verbrauchern betrug die Lieferrate 0,60/s. Können wir davon ausgehen, dass jeder Verbraucher mit 0,10/s (1msg/10sec) geliefert hat? Damit wurden die Nachrichten in der Warteschlange angehäuft. Wie auch immer, ich werde versuchen, dieses Szenario mit DEBUG level auf zu reproduzieren. –