TL; DR
Jakie są kroki, aby skonfigurować usługę HA-JNDI z konfiguracją HornetQ? Uważam, że dokumentacja jest trochę rozproszona. Przeczytałem dokumentację tutaj, ale nie wydaje się, aby szczegółowo ilustrowała.
Dłuższa wersja:
Mamy więc konfigurację HornetQ JMS wraz z JNDI. Powiedzmy, że 5 serwerów, na których działa główna instancja HornetQ JMS z usługą JNDI na każdym. Na każdym z tych 5 serwerów mamy również slave działające dla innego mastera HornetQ.
Ilustrować:
Server A - HornetQa_master, JNDI, HornetQb_slave
Server B - HornetQb_master, JNDI, HornetQc_slave
Server C - HornetQc_master, JNDI, HornetQd_slave
Server D - HornetQd_master, JNDI, HornetQe_slave
Server E - HornetQe_master, JNDI, HornetQa_slave
Każdy z tych serwerów HornetQ służy jako oprogramowanie pośredniczące dla naszych różnych potrzeb backendowych, co oznacza 5 serwerów, 5 instancji głównych HornetQ, 5 instancji HornetQ slave i 5 serwerów JNDI. Problem z tą konfiguracją polega jednak na tym, że jeśli host serwera (nie tylko proces, sam host), powiedzmy A, ulegnie awarii, w idealnym przypadku usługa powinna wrócić do HornetQ działającego na serwerze E, na którym znajduje się podrzędny HornetQ A. Jednak aby wznowić działanie jako master HornetQ, HornetQa_slave musi rozmawiać z procesem JNDI działającym na serwerze A (przypuszczam, że replikuje komunikaty). Ponieważ host A sam jest wyłączony, HornetQa_slave działający na E nie ma możliwości komunikowania się z JNDI na A, a zatem nie może wznowić jako proces główny.
Gdyby usługa JNDI była wysoce dostępna, proces podrzędny HornetQ mógłby zostać wznowiony jako nadrzędny zgodnie z oczekiwaniami. Czy ktoś mógłby wskazać na dokumenty lub w prostych krokach zilustrować, w jaki sposób możemy przekonwertować naszą istniejącą konfigurację na HA-JNDI? Co jest warte, przeczytałem wiele źródeł , ale wydaje się, że nie ilustrują one zbyt szczegółowo, jak zacząć konfigurować HA-JNDI. Daj mi znać, jeśli potrzebujesz więcej informacji o naszej aktualnej konfiguracji.