【发布时间】:2016-03-17 06:44:06
【问题描述】:
我们使用 ActiveMQ、php 和 stomp。我们发现,当 ActiveMQ 重新启动时,在 stomp 上工作的消费者无法识别连接丢失。我发现,只有 stomp 1.2 支持心跳。 ActiveMQ 使用 stomp 1.1,最新的 php stomp 实现只支持 1.0 版本。 我也尝试 amqp,但我发现 php 支持 0.9.1 的最新实现,ActiveMQ 使用 1.0 版本,当客户端连接 ActiveMQ 时返回错误:
WARN | Connection attempt from non AMQP v1.0 client. AMQP,0,0,9,1
WARN | Transport Connection to: tcp://127.0.0.1:42168 failed: org.apache.activemq.transport.amqp.AmqpProtocolException: Connection from client using unsupported AMQP attempted
我也尝试编译 qpid proton,但我在 ubuntu 中遇到了一些问题,我被他们的 php 示例弄糊涂了:https://qpid.apache.org/releases/qpid-proton-0.8/messenger/php/examples/recv.php.html 我在哪里可以找到包含在内的 proton.php?
我应该选择哪种交通工具?
【问题讨论】:
-
对不起,qpid 质子,而不是 pqid 质子。只是错字。
-
STOMP v1.1 和 v1.2 都支持心跳,ActiveMQ 支持 STOMP 协议 1.0、1.1 和 1.2
-
但是还是找不到带心跳的php实现:(
标签: php activemq stomp qpid php-amqp