如果没有回执头,您的应用程序可能会比代理接收消息的速度更快地发送消息。代理可能会发出故障通知,但由于 STOMP 是异步的,您的客户端无法看到它。
如果没有回执,ActiveMQ (5.5.0) 在 ProducerFlowControl 启用时会丢弃消息(即使是持久消息),我的应用程序对此一无所知(send() 返回 true)。指定了回执头后,STOMP 库会为您处理等待回执确认 - 您实际上会自动被节流。
(PECL stomp >= 0.1.0)
Stomp::send -- stomp_send — 发送消息
面向对象风格(方法)
过程式风格
将消息发送到消息代理。
link
仅限过程式风格:由 stomp_connect() 返回的 stomp 连接标识符。
destination
发送消息的位置
msg
要发送的消息。
headers
包含附加头的关联数组(例如:回执)。
参见 stomp_ack().
注意:
可以指定一个事务头,表明消息确认应该成为命名事务的一部分。
Stomp 本质上是异步的。可以通过添加回执头来实现同步通信。这将导致方法在服务器确认收到消息或达到读取超时之前不返回任何内容。
如果没有回执头,您的应用程序可能会比代理接收消息的速度更快地发送消息。代理可能会发出故障通知,但由于 STOMP 是异步的,您的客户端无法看到它。
如果没有回执,ActiveMQ (5.5.0) 在 ProducerFlowControl 启用时会丢弃消息(即使是持久消息),我的应用程序对此一无所知(send() 返回 true)。指定了回执头后,STOMP 库会为您处理等待回执确认 - 您实际上会自动被节流。