0
votes

Apache Camel remplace ou complète-t-il la création de micro-services avec une botte à ressort?

J'ai travaillé pendant un moment avec des micro-services de printemps et je ne suis pas venu sur Apache Camel comme outil de construction de micro-services. Apache Camel est un remplacement de la création de micro-sept-sept avec une botte à ressort ou d'ajouter des fonctionnalités / raccourcis au développement de ces services avec des bottes à ressort? Il est déjà assez simple de créer des microservices avec des bottes de printemps, il est donc difficile d'imaginer ce que Apache Camel ajouterait mais c'est l'essence de ma question.


1 commentaires

Apache Camel est un cadre d'intégration, probablement mieux comparable à l'intégration du ressort. Vous pouvez l'utiliser si vous devez intégrer les données à partir de plusieurs sources et traiter certaines tâches. Vous pouvez soit la combiner avec des démarrages à ressort ou exposer vos propres services HTTP directement via Tomcat / jetée / Netty / Netty / ... Intégration / ... utilisez simplement Restdsl de Camel (qui n'a malheureusement pas grand chose à faire avec le repos autrement que d'exposer un point d'extrémité HTTP pour certaines méthodes HTTP). Un PRO pour chameau est probablement son énorme nombre de composants pris en charge


3 Réponses :


2
votes

Apache Camel n'a rien à voir avec des microservices.

C'est une mise en œuvre des modèles d'intégration d'entreprise: https://www.enterpriseIntegrationpatterns.com/ < / p>

Apache Camel fournit une implémentation de la plupart des modèles du livre de Gregor Hohpe et de Bobby Woolf. Plus une variété de points d'extrémité entrants et sortants à intégrer avec des systèmes tels que le système de fichiers, FTP, HTTP, Messagerie, Facebook, etc.

Rechercher plus d'informations sur le site Web: https://camel.apache.org/

Il existe un projet de démarrage de démarrage à ressort pour exécuter Camel dans une application de démarrage à ressort: https://camel.apache.org/spring-boot.html


3 commentaires

"n'a rien à voir avec les microservices" est un peu dur, peut-être? Vous pouvez certainement utiliser Camel dans quelque chose de déployé comme microservice. Donc, pour op, vous pouvez utiliser Camel pour gérer le routage / la transformation de données / message dans votre microservice qui utilise également des démarrages à ressort.


@Stevehuston utilisant des chameaux pour créer des microservices sans aspect d'intégration n'est ridicule. S'il s'agit d'une simple microservice plaine ancienne Springboot vous donnera beaucoup plus de liberté. Le chameau est une boîte à outils EIP et, bien que cela puisse être marteau, tout n'est pas un clou.


@Namphibian - Excellents points, certainement. Bonne clarification. Mais la question initiale était si élevée qu'il est difficile de dire quelle est la situation vraiment. Je laisse sur le point de savoir si l'addition de Camel apporte une valeur de chameau.



0
votes

Quel came Apache ajouterait-il, c'est l'essence de ma question p>

En service de la déclaration de microservices à base de repos, DSL de Repos de Camel fournit une API fluide pour déclarer des microservices. Prenons par exemple: P>

rest("/books").produces("application/json")
    .get().outType(Book[].class)
        .to("bean:bookService?method=getBooks(${header.bookCategory})")

0 commentaires

0
votes

Spring Boot est un cadre qui simplifie l'emballage de l'application et le démarrage tandis que le ressort est le cadre réel qui possède des bibliothèques pour effectuer diverses tâches. Techniquement, nous pouvons utiliser un chameau pour construire des micro-services également et de nombreux aspects du chameau dépendent du printemps. Si vous prévoyez de nombreuses fonctionnalités d'intégration connexes telles que l'envoi d'un courrier électronique ou de communiquer avec d'autres systèmes, vous pouvez également utiliser une architecture hexagonale.


0 commentaires