2012-06-12 10 views

Odpowiedz

5

wierzę domyślnie ActiveMQ jest ustawione na auto potwierdzić komunikaty. Oznacza to po prostu, że po otrzymaniu wiadomości automatycznie potwierdza, że ​​wiadomość dotarła. Jest to to samo co wywołanie metody .acknowledge() z obiektu JMS.

Jedną z przyczyn wyłączenia automatycznego potwierdzania jest utworzenie serwera i powiedzmy, że przetwarzasz każdą wiadomość JMS i wykonujesz jakąś transakcję bazy danych. Jeśli transakcja zakończy się niepowodzeniem, chcesz, aby wiadomość JMS została ponownie przesłana, aby można było naprawić błąd i ponownie go przetworzyć. W tym sensie wystarczy tylko potwierdzić obiekt JMS dopiero po przetworzeniu.

+0

masz na myśli to, że chcesz, aby twoje kodowanie wzięło odpowiedzialność za potwierdzenie po wykonaniu jakiegoś przetwarzania i nie chcesz używać domyślnego mechanizmu potwierdzenia. – Aryan

+0

Tak, przez wyłączenie, będziesz obsługiwać potwierdzenie. –

+0

Dzięki za ur pomoc :) Dzięki – Aryan