使用 Camel 将消息从 ActiveMQ Artemis 发送到 Rest 服务

Using Camel to send messages from ActiveMQ Artemis to a Rest Service

我有一个消息服务器,我们从世界各地的客户那里接收消息。 我们还有一个具有 API 的休息服务来获取该信息并保存到数据库中。 我不想编写另一个 windows 服务来监听队列并保存到数据库。有没有一种方法可以在活动的 mq 服务器上配置 camel,这样我就可以确保来自特定队列的消息自动调用预期的 Rest 服务。

我们的 Rest 服务是一个 .net 应用程序。

您可以将 Camel 路由部署到您的 ActiveMQ Artemis 代理。它们只需要打包为嵌入式 Jetty 服务器可以部署的 Web 应用程序存档(即 WAR)。 examples/features/standard/camel 目录中的 2.7.0 版 Artemis 将提供一个如何执行此操作的示例。您可以在发布前 view it online。尽管该示例尚未发布,但该概念在以前的版本中应该仍然有效。

Camel 应该能够按照 Camel documentation 中的描述与您的 REST 端点一起工作。对于它的价值,您的 REST 服务是否在 .NET 中实现并不重要。它通过 HTTP 进行通信,因此如果它也使用 HTTP,则任何平台上任何语言的任何客户端都应该能够使用它。