Apache Camel - funkcje
Po zapoznaniu się z przeglądem Apache Camel, zagłębmy się teraz w jego funkcje, aby zobaczyć, co oferuje. Wiemy już, że Apache Camel to platforma Java o otwartym kodzie źródłowym, która zasadniczo zapewnia implementację różnych EIP. Camel ułatwia integrację, zapewniając łączność z bardzo dużą różnorodnością transportów i interfejsów API. Na przykład możesz łatwo przekierować JMS do JSON, JSON do JMS, HTTP do JMS, FTP do JMS, a nawet HTTP do HTTP i łączność z Microservices. Wystarczy zapewnić odpowiednie punkty końcowe na obu końcach. Camel jest rozszerzalny, dzięki czemu w przyszłości można będzie łatwo dodać więcej punktów końcowych do struktury.
Aby połączyć EIP i transporty razem, należy użyć języków specyficznych dla domeny (DSL), takich jak Java, Scala i Groovy. Typowa reguła routingu Java może wyglądać następująco:
from ("file:/order").to("jms:orderQueue");
Ta reguła routingu ładuje pliki z order katalog, tworzy komunikat JMS z zawartością pliku i wysyła ten komunikat do kolejki o nazwie orderQueue.
Oto niektóre z najważniejszych funkcji Camel, które mogą być przydatne podczas tworzenia aplikacji Camel -
Camel obsługuje podłączane formaty danych i konwertery typów dla takich przekształceń wiadomości, więc w przyszłości można dodać nowe formaty i konwertery. Obecnie obsługuje kilka popularnych formatów i konwerterów; żeby wymienić tylko kilka - CSV, EDI, JAXB, JSON, XmlBeans, XStream, Flatpack, Zip.
Camel obsługuje dołączane języki do pisania predykatów w DSL. Niektóre z obsługiwanych języków to JavaScript, Groovy, Python, PHP, Ruby, SQL, XPath, XQuery.
Camel obsługuje model POJO, dzięki czemu można podłączyć Javabean w różnych miejscach.
Camel ułatwia testowanie tak dużych rozproszonych i asynchronicznych systemów za pomocą wiadomości.
Zrozummy teraz architekturę Camel i zobaczmy, jak zaimplementowano różne funkcje.