跳到主要内容

REST

Solace REST 消息传递使用双向 HTTP POST 请求与 Solace PubSub+ 事件代理交换消息。这使得 REST 客户端能够向其他 Solace PubSub+ 事件代理客户端发送和接收消息,无论这些客户端是使用 Solace API 还是开放的 API 或协议。

下图展示了应用程序如何使用 RESTful API 通过 HTTP 发送和接收消息。

img

HTTP POST 请求

REST 生产者将消息内容发送在 HTTP POST 请求的正文中。对于请求/回复场景,响应内容携带在 HTTP 200 OK 响应的正文中。

对于 REST 消费者,事件代理将消息发送在 HTTP POST 请求的正文中。同样对于请求/回复场景,响应内容携带在 HTTP 200 OK 响应中。这在 REST 消息传递协议部分中有更详细的解释。

使用双向 HTTP POST 请求有诸多好处。首先,它消除了使用 HTTP GET 请求轮询消息时可能出现的消息丢失的可能性。此外,当使用多个并行 HTTP 连接时,它还能实现更高的性能和总体消息速率。

REST概念

如果您之前没有一起使用过 REST 和 Solace PubSub+,您可能想看看概述:应用程序如何与 PubSub+ 消息传递组件交互页面的 REST 部分。它将带您参观 PubSub+ 事件代理的消息传递组件,并在高层次上解释它们如何使用 REST 将数据从生产者传输到代理,再从代理传输到消费者。

何时使用REST消息传递与微网关

在一个消息 VPN 内,您可以部署 REST 消息传递或微网关,但不能同时部署两者。

应该使用 REST 消息传递的情况

当您希望应用程序发送和/或接收消息,但更倾向于使用 HTTP 库而不是 MQTT、AMQP 或 Solace 的库时。部署 REST 消息传递时,您的应用程序必须使用 Solace REST HTTP 消息编码中定义的 HTTP。

有关如何配置 REST 消息传递的更多信息,请参阅 REST 消息传递管理。

应该使用微网关的情况

当您希望在 RESTful 服务端点(由 Swagger/Open API、RAML 或更非正式地定义)和 REST 客户端之间提供连接时。微网关提供的性能高于 API 网关,但功能较少,然而比 HTTP 负载均衡器具有更多的功能。部署微网关时,Solace 对使用的 HTTP 协议没有要求。

有关微网关的更多信息,请参阅微网关概述。

开始使用REST消息传递教程

这些教程将向您介绍使用 Solace PubSub+ 开发使用 REST 的应用程序的基础知识。

开始教程