Zamieszanie między ActiveMQ i ActiveMQ-Artemis?

16

Czy ktoś może wyjaśnić różnicę między ActiveMQ a ActiveMQ-Artemis ? Z tego, co rozumiałem na Wikipedii , ActiveMQ-Artemis jest zasadniczo następcą ActiveMQ, ale jeśli tak jest, nie rozumiem, dlaczego Artemis jest wymieniony jako podprojekt ActiveMQ.

Co więcej, jeśli spojrzę na wersję dla ActiveMQ i ActiveMQ-Artemis, widzę, że wersje są zupełnie inne. ActiveMQ w wersji 5.15, a Artemis w wersji 2.2.

Z tego, co rozumiem, Artemis to szybsze, nowsze wdrożenie, w tym obsługa JMS 2.0. Biorąc pod uwagę nową instalację i wdrożenie platformy MQ, czy ActiveMQ 5.15 należy uznać za przestarzałe zamiast Artemis?

Eric B.
źródło
To niefortunne, że postanowili tak zabłocić wody. Chociaż HornetQ istnieje już od jakiegoś czasu, nie ma udziału w rynku, jaki ma ActiveMQ. ActiveMQ był zahartowany przez wiele lat, ponieważ był używany w dużych i małych projektach oraz miał wiele optymalizacji i poprawek błędów. HornetQ, teraz, gdy Red Hat wprowadza go do Artemidy i do swojego produktu AMQ 7, przejdzie te same rygory i poprawki błędów. Tutaj możesz śledzić postęp i jego stan. Issues.apache.org/jira/projects/ARTEMIS/issues/…
Ranx

Odpowiedzi:

20

Apache otrzymał kod HornetQ i postanowili zmienić nazwę na Artemis, a następnie potencjalną przyszłą ActiveMQ.

Jednak patrząc na najnowsze wiadomości na ich płycie, wydaje się, że oba projekty są nadal odrębne, a ActiveMQ 5.15.x nadal korzysta ze starego kodu źródłowego ActiveMQ.

Najwyraźniej muszą dodać niektóre funkcje ActiveMQ, które nie były w początkowym kodzie HornetQ, jak pełna obsługa AMQP.

W tym starszym poście znajduje się kilka pytań / odpowiedzi, które mogą odpowiedzieć na jedno z twoich pytań:

Q. ActiveMQ PMC musi dostarczyć plan:

A. Apache ActiveMQ ma wiele produktów z wieloma wersjami:

a.  ActiveMQ - (version 5.x.x)
b.  ActiveMQ Artemis - (version 1.x.x)

Oznacza to, że nie jesteśmy jeszcze gotowi do zadeklarowania, że ​​ActiveMQ Artemis jest następcą ActiveMQ 5.x. Poczekamy, aż produkt dojrzeje, aby podjąć tę decyzję.

I ten oryginalny post zaraz po datku.

Z tego, co rozumiem, Artemis to szybsze, nowsze wdrożenie, w tym obsługa JMS 2.0. Biorąc pod uwagę nową instalację i wdrożenie platformy MQ, czy ActiveMQ 5.15 należy uznać za przestarzałe zamiast Artemis?

Implementacja nie jest nowsza (ani trochę), ale pochodzi z innego projektu open source (HornetQ), który już wdrażał JMS 2.0.

W moim przypadku, jeśli muszę wybrać MOM dla zupełnie nowego projektu, na pewno wypróbuję Artemis, zwłaszcza testując multi-wystąpienie (master-master) i nową funkcję, która zastępuje starych Network-Of-Brokers w świecie AMQ. Muszę przyznać; Nie próbowałem tego, a jeśli wiesz, jak poprawnie skonfigurować stabilny ActiveMQ, myślę, że musisz wziąć to pod uwagę. Z drugiej strony powiedziałbym, że HornetQ był naprawdę stabilny i łatwy do osadzenia w dowolnej aplikacji Java (dość łatwo osadziliśmy go w wojnie na Tomcat).

Osobiście, jeśli będę musiał zaktualizować moją obecną implementację ActiveMQ, najszybszym sposobem byłoby pozostanie w najnowszej wersji ActiveMQ 5.15.x, ponieważ przejście na Artemis prawdopodobnie spowodowałoby więcej problemów.

Bibliografia:

рüффп
źródło
1
To zapewniło mi wskazówki potrzebne do wyjaśnienia sprawy. Raport ze spotkania zarządu ActiveMQ w styczniu 2018 r. Zawiera komentarz: „Ogólnym celem działań na rzecz parytetu funkcji między ActiveMQ 5.x i Artemis jest to, aby Artemis ostatecznie stał się ActiveMQ 6.x.” I zawierają link do planu działania w celu osiągnięcia parytetu. Tak więc Artemis wywodzi się z HornetQ i jest osobnym produktem dla ActiveMQ 5.X, ale mają nadzieję, że stanie się implementacją ActiveMQ 6.X.
George Hawkins