当前位置: 首页 > 面试题库 >

Apache Camel到底是什么?

西门安宁
2023-03-14
问题内容

我不明白exactly到底在做什么。

如果你能用101个字来介绍exactly:

  • 到底是什么
  • 它如何与用Java编写的应用程序交互?
  • 它与服务器一起使用吗?
  • 它是一个独立程序吗?
  • 请解释一下骆驼是什么。

问题答案:


我说:

Apache Camel是消息传递技术与路由的结合。它将消息传递的起点和终点连接在一起,从而允许将消息从不同的源传输到不同的目的地。例如:JMS-> JSON,HTTP-> JMS或渠道FTP-> JMS,HTTP-> JMS,JSON-> JMS

维基百科说:

Apache Camel是基于规则的路由和中介引擎,它使用API​​(或声明性Java域特定语言)来配置路由和中介规则,从而提供了基于Java对象的企业集成模式实现。特定领域的语言意味着Apache Camel可以使用常规Java代码在IDE中支持类型安全的路由规则智能完成,而无需使用大量的XML配置文件。尽管还支持Spring内部的XML配置。我以一种更易于理解的方式描述了这一点…

为了了解什么是Apache Camel,你需要了解什么是企业集成模式。

让我们从大概已经知道的内容开始:Singleton模式,Factory模式等;它们只是组织问题解决方案的方式,而本身并不是解决方案。四人帮在他们出版《设计模式》一书时,对其他人进行了分析和提取。他们节省了我们中的一些人在思考如何最好地构建代码结构方面的大量精力。

就像四人帮一样,Gregor Hohpe和Bobby Woolf撰写了《企业集成模式》(EIP)一书,他们在书中提出并记录了一组新的模式和蓝图,以帮助我们最佳地设计大型基于组件的系统,其中可以使用组件。在同一进程或另一台计算机上运行。

他们基本上建议我们将系统构建为面向消息的系统-组件之间使用消息作为输入和输出相互通信,而绝对没有其他消息。它们向我们展示了一套完整的模式,我们可以从中选择并在将组成整个系统的不同组件中实施。

那么什么是Apache Camel?

Apache Camel为你提供了EIP的接口,基础对象,通常需要的实现,调试工具,配置系统以及许多其他帮助程序,当你要实施解决方案以遵循EIP时,将为你节省大量时间。

以MVC为例。MVC在理论上非常简单,我们可以在没有任何框架帮助的情况下实现它。但是良好的MVC框架为我们提供了现成的结构,并花了很多功夫,并在创建大型MVC项目时考虑了你需要的所有其他“方面”,这就是我们大多数时候使用它们的原因。

这正是Apache Camel用于EIP的原因。对于想要实施其解决方案以遵循EIP的人们来说,这是一个完整的生产就绪框架。


 类似资料:
  • 主要内容:JSP的由来,Servlet与JSP异同点,JSP相对于Servlet的优点JSP(Java Server Pages)是一种动态网页开发技术。JSP 文件就是在传统的 HTML 文件中插入 Java 代码和 JSP 标签,后缀名为 。 JSP 与 PHP、ASP、ASP.NET 等语言类似,都运行在服务端。通常返回给客户端的就是一个 HTML 文件,因此只要有浏览器就能查看 JSP 页面。 JSP 使用 JSP 标签在 HTML 网页中插入 Java 代码,标签通常以

  • 直到我在旧存储库中随机检查 ,我才听说过这个文件,它就是一个我自己没有编辑过也从未见过的文件。我不知道它是如何到达那里的。 似乎很常见 - 主要是如何删除它(例如这里和这里)。 这个文件是什么,是什么创建了它?

  • 基本上,为什么有这个术语? 还有,接口是什么意思?

  • 译者:lhc741 作者:Jeremy Howard,fast.ai。感谢Rachel Thomas和Francisco Ingham的帮助和支持。 我们推荐使用notebook来运行这个教程,而不是脚本,点击这里下载notebook(.ipynb)文件。 Pytorch提供了torch.nn、torch.optim、Dataset和DataLoader这些设计优雅的模块和类以帮助使用者创建和训练

  • 问题内容: 我还没有找到我能理解的高级Spring bean定义。我看到Grails文档和书籍中经常提到它们,但是我认为了解它们的好处将是有益的。那么什么是春豆呢?如何使用它们?他们和依赖注入有关系吗? 问题答案: 构成应用程序主干并由容器管理的对象称为bean。Bean是由Spring IoC容器实例化,组装和以其他方式管理的对象。这些bean是使用你提供给容器的配置元数据创建的,例如,以XML

  • 问题内容: 我从事Java SE已有数年了,然后转向Java EE。但是,在理解Java EE的某些方面时遇到一些麻烦。 Java EE只是一个规范吗?我的意思是:是EJB Java EE吗? EJB / Spring是否是Java EE的不同实现? 抱歉,我很难理解Java EE是什么。 有人可以解释一下Java EE是什么吗?和EJB? 问题答案: Java EE只是一个规范吗?我的意思是:是