在 Camel 路由中,我是否应该考虑将我的业务逻辑放在离散托管的 bean 端点中,例如消息驱动的 bean 或 Web 服务,而不是仅仅在 Camel 处理器中实现它?
将 Camel 仅用于调解和编排,使用处理器作为过滤器,而不是作为业务逻辑的容器,似乎更清晰地分离了关注点。但是,我不认为此时需要 EJB 容器,而且似乎我需要一个来托管 MDB。
更清洁的架构与更小的足迹、更少的技术——有人对此有想法、观点或强烈感受吗?
最佳答案
我通常使用 Camel 执行以下操作...
否则,对于自包含的业务逻辑(尤其是遗留集成),最好使用 POJO 或 WebServices。这提高了可测试性并使您的应用程序更加模块化等。然后,您可以将 Camel 用于以下...
对于长时间运行的进程,Camel 可以通过各种 asycnhronous 来促进这一点。模式/技术(JMS、CXF、轮询消费者、预定作业等),并让您控制 threading ...
总而言之,有很多方法可以对其进行切片。 Camel 轻巧、灵活,旨在简化与现有技术的集成,而不是取代它们......祝你好运
关于architecture - Camel 处理器中的业务逻辑与服务端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9413045/