2016-05-20 5 views
0

Ich habe eine Sender-Klasse, die die Nachricht an eine Warteschlange und eine Receiver-Klasse mit einer Methode zum Empfangen der Nachrichten sendet, funktioniert es gut. Wenn ich 10 Nachrichten an die Warteschlange sende, werden diese erfolgreich von Receiver verbraucht. Nun ist das Problem, wenn ich 1000 der Nachricht dann Einzelempfänger Instanz senden (Objekt) dauert mehr Zeit, um 1000 Nachricht zu verarbeiten, dann erstelle ich die beiden Instanzen des Empfängers schnell zu verarbeiten. Es funktioniert auch gut, aber ich möchte dieses Empfängerobjekt dynamisch erhöhen, wenn meine Warteschlange mehr als 1000 Nachrichten hat, dann dynamisch, sollte eine weitere Instanz (Objekt) der Empfängerklasse erstellt werden. wie Arbeit WarteschlangeWie im Frühling Benutzerobjekt dynamisch zu erhöhen amqp (rabbitmq)

Antwort

1

Verwenden Sie eine SimpleMessageListenerContainer? Wenn dies der Fall ist, können Sie concurrentConsumers und maxConcurrentConsumers einstellen, und sie werden je nach Bedarf aufgrund einiger Konfigurationsoptionen erhöht.

Siehe the documentation.

+1

Thanq sehr viel, ich habe, was ich will –

+0

Ich sehe Sie sind neu hier - es ist üblich, eine Antwort zu "akzeptieren" - es wird anderen helfen - klicken Sie einfach das Häkchen unter den Abstimmknöpfen auf der linken Seite. –