Frameworks d'intégration Java : Spring Integration vs Apache Camel (Par Stéphane Delplanque, SQLI) Spring Integration vs Apache Camel : la pérennité

Malgré l'intérêt évident que peuvent susciter ces frameworks, il est nécessaire de s'assurer que l'adoption de la solution ne met pas en risque les projets dans lesquels ils s'intègrent, particulièrement sur les activités de build et de maintenance.

 Editeur

Inutile de s'étendre sur la présentation des communautés SpringSource et Apache, leur renommée n'est plus à faire. Il est toutefois intéressant de préciser que le projet Camel est issu d'ActiveMQ et fait partie intégrante de FuseESB, fournie par la société Progress Software, spécialiste des solutions ESB. En outre le fait que le projet soit l'un des plus actifs de la communauté (avec ActiveMQ) permet d'assoir sa réputation. L'avenir de Spring Integration pourrait quant à lui être bousculé par le rachat récent de SpringSource par VMWare, affaire à suivre?

 Maturité

Le projet Camel est développé par 70 contributeurs et 20 commiters

La version RC1 de Spring Integration a été officialisée fin 2008, Camel est passé en projet top level chez Apache début 2009, on peut donc estimer que les deux solutions ont percé sur le marché au même moment et qu'elles sont plutôt récentes, ce qui ne présente pas en soit un risque majeur, mais ne permet pas forcément d'avoir de réels retours d'expérience sur des projets d'ampleur suffisante.

 Equipe de développement

Le projet Camel est développé par une équipe formée de 70 contributeurs et 20 commiters dont certains reconnus tels que James Strachan (co-fondateur de Active MQ, ServiceMix, Groovy, commiter sur Maven ?). En revanche il y a très peu d'information disponible sur l'équipe chargée du développement de Spring Integration. A priori à partir des informations glanées sur l'outil de gestion d'anomalies on peut estimer la population à environ 10 développeurs, mais ce chiffre n'est pas officiel.

 Support

Cet aspect est particulièrement important aux yeux des décideurs susceptibles de valider l'adoption d'une solution. L'assurance d'un support fourni par un éditeur reconnu est souvent le signe d'une implication et d'un engagement forts de la part de ce dernier et donc indirectement un argument de poids quant au choix d'un produit. Sur Spring Integration, il existe différents types d'interventions ou de prestations de consulting proposées dans le cadre de l'offre de support autour de Spring. Sur Camel, le support est pris en charge entre autres par les sociétés FuseSource, Progress Software ou OpenLogic.

On ne peut pas vraiment parler de roadmap chez SpringSource

 Adoption

Il suffit de saisir les bons termes dans un moteur de recherche pour s'apercevoir que Spring Integration et Camel sont des sujets d'actualité : plus de 100 000 résultats ramenés par Google pour l'un comme pour l'autre, plusieurs centaines de documents, plusieurs milliers de posts dans les forums ou les blogs. Spring Integration a une légère avance en matière de résultats, sur la partie documentaire en particulier. Les forums officiels des éditeurs sont également particulièrement actifs.

 Roadmap

On ne peut pas vraiment parler de roadmap chez SpringSource puisque nous n'avons a pas de visibilité sur le plan de versions, ce qui n'est pas le cas côté Camel pour lequel le détail des prochaines versions (plus une version "future") est disponible. Le contenu des releases est très variable mais globalement les versions de Camel contiennent de nombreuses améliorations ou évolutions par rapport à son concurrent qui semble-t-il s'investit sur la stabilisation de son produit plus que son extension.