如何将 XML 事件发送到 Apache Kafka?

How can I get XML events to Apache Kafka?

我的组织中有一个集群(2 节点)CRM 应用程序,它使用 spring 集成框架 (v2.2.0) 在执行操作时发布事件,例如创建请求,创建客户等。 目前这些事件只是进入一个 NULL 通道,但我想开始将它们转发到同一网络上的 Apache Kafka 运行 实例。从那里我想对数据进行进一步的处理和分析,以使用其他组件创建实时报告。

我查看了spring-integration-kafka项目,但似乎与spring的版本不兼容 应用程序使用的集成(我无法升级)。

我认为将这些事件发送到 Kafka 的选项是:

1) 将事件发送到本地文件系统并让 Kafka 从那里拉取数据。

2) 将事件发送到中间 JMS 队列并让 Kafka 从那里提取数据。

3) 通过 HTTP 请求将事件直接发送到 Kafka (?) 非常感谢

好吧,如果您无法升级,只需复制 KafkaProducerMessageHandler class 并将其调整为您当前的 Spring 集成版本。最后它只是一个 MessageHandler 从通用 <int:outbound-channel-adapter>.

中使用

终于可以直接从 Service Activator 方法使用 Kafka Producer API。

很遗憾,您的所有建议都不够,因为它们包含额外的网络通信层,同时我们只需要直接发送给 Kafka。