ApacheKafka和JMS之间的连接

ApacheKafka和JMS之间的连接,jms,apache-kafka,Jms,Apache Kafka,我想知道ApacheKafka是否可以通信并向JMS发送消息?我能在他们之间建立联系吗?例如,我在我的系统中使用JMS,它应该向使用Kafka的另一个系统发送消息,但是如果我正确理解了这个需求,那么回答会晚一些 如果要求是来自的同步消息传递 客户->JMS->卡夫卡-->消费者 然后,以下不是解决方案,但如果它(而且很可能)满足异步需求,如: 客户端->JMS-->Kafka-->consumer 然后,这将与卡夫卡连接框架有关,该框架解决了如何将不同的源和汇与卡夫卡集成的问题 因此,您需要

我想知道ApacheKafka是否可以通信并向JMS发送消息?我能在他们之间建立联系吗?例如,我在我的系统中使用JMS,它应该向使用Kafka的另一个系统发送消息,但是如果我正确理解了这个需求,那么回答会晚一些

如果要求是来自的同步消息传递 客户->JMS->卡夫卡-->消费者 然后,以下不是解决方案,但如果它(而且很可能)满足异步需求,如:

客户端->JMS-->Kafka-->consumer

然后,这将与卡夫卡连接框架有关,该框架解决了如何将不同的源和汇与卡夫卡集成的问题


因此,您需要的是JMSSourceConnector。

如果要求与前面的答案相反:

卡夫卡制作人->卡夫卡经纪人->JMS经纪人->JMS消费者

然后,您将需要一个Kafkanconnect接收器,如下面Data Mountaineer提供的接收器


不是直接的。这两个概念是不可比拟的。JMS是消息传递服务的供应商中立API规范

虽然Kafka可能被归类为消息传递服务,但它与JMS API不兼容,据我所知,在不做出重大妥协的情况下,没有一种简单的方法可以使JMS适应Kafka的用例


但是,如果您的需要只是在Kafka和JMS兼容代理之间移动消息,那么可以通过编写一个简单的中继应用程序(从一个代理消费并发布到另一个代理上)或使用类似于Kafka Connect的东西来轻松实现这一点,它为大多数数据源(包括JMS代理)提供了预封装的接收器,数据库等。

你的意思是没有编码吗?@ShawnGuo是的,只发送请求等。@BohdanMyslyvchuk假设还没有——我在Confluent页面上没有看到任何关于JMSSourceConnect的文档,默认情况下是可用的还是我们需要为此编写自定义类?Confluent现在在Confluent Enterprise 3.2发行版中提供了一个JMS客户机。