在我从Apache camel网站下载的一个camel项目中 - 在camel-context.xml中,我看到路由,cxf,活动mq已定义并用于发送和接收msgs。如果可以在不使用FUSE的情况下构建所有这些组件,并且可以独立运行camel - 在哪种情况/用例中可以使用FUSE?
在我的项目中,要求是来自客户端的所有Web服务调用都通过FUSE使其异步(我的管理员每次都提到FUSE)。 如果这可以我们单独使用骆驼 - 我试图了解FUSE在哪里适合 - 根据我的理解,我不需要FUSE?
答案 0 :(得分:2)
Apache Camel本质上是一个可供其他应用程序,服务器等使用的库。例如,您可以在Java应用程序中使用Apache camel来创建Web服务客户端,或者可以将其嵌入到允许Web使用的WAR应用程序中-site从FTP站点读取,然后将其转换为其他消息。
您需要了解的是这一点。 Apache Camel需要在某个地方使用,而不是设计为自行运行。因此,它需要某种运行时容器来为Camel上下文加注星标。
Fuse是一个运行时容器,用于启动和管理Apache Camel。 Fuse是一个ESB,并且在这里运行apache camel是有意义的,因为ESB通常是您的集成点,而Camel是一个集成库。您可以阅读更多相关信息in this answer。
答案 1 :(得分:0)
保险丝是一个容器。例如,您可以构建一个bundle而不使用apache camel。假设你要打印“Hello”,因此你不需要导入apache camel。但是如果你想在你的项目中使用esb功能,比如当遇到问题时打印Hello,你需要导入apache camel库。