我们是不是有任何 Python 客户端实现 STOMP 1.1 和自动故障转移支持?

Posted

技术标签:

【中文标题】我们是不是有任何 Python 客户端实现 STOMP 1.1 和自动故障转移支持?【英文标题】:Do we have any Python client implementing STOMP 1.1 & auto failover support?我们是否有任何 Python 客户端实现 STOMP 1.1 和自动故障转移支持? 【发布时间】:2012-02-27 22:21:56 【问题描述】:

我需要使用一些 Python STOMP 客户端来使用 stomp 协议与我的 ActiveMQ 服务器通信。 我搜索了一些 Python STOMP 客户端库并找到了其中一些,但它们只实现了 STOMP 1.0。但是,我需要 STOMP 1.1 协议的一些特性,比如心跳支持,所以我正在寻找 STOMP 1.1 Python 客户端库。我们有任何 STOMP 1.1 Python 客户端库吗?

另外,有没有支持故障转移功能的 Python 客户端库?

[更新] 看起来 stomppy 支持 STOMP 1.1,但我仍然没有得到任何支持自动故障转移的客户端。

【问题讨论】:

【参考方案1】:

我刚刚发布了stompest 2.1,它支持代理故障转移(不仅在初始连接时,在重新连接时还具有可选的订阅重播),并带有 STOMP 1.0、1.1 和 1.2 协议的功能完整实现,包括 heart -beating 和 unicode 支持。

【讨论】:

【参考方案2】:

这看起来没有我预期的那么复杂,并且有一些原因可以说明为什么人们不会提出具有自动故障转移功能的 STOMP 库。例如,如果 STOMP 应用程序正在使用事务等,那么在 STOMP 库中维护状态并在故障转移后将事务重播到新代理将是相当困难的。

因此,大多数库(甚至 stomp.py)仅在首次连接到代理时才提供故障转移支持。稍后,应用程序必须处理故障转移。

为了我们的目的,我已经在我的应用程序中成功实现了这一点。

【讨论】:

以上是关于我们是不是有任何 Python 客户端实现 STOMP 1.1 和自动故障转移支持?的主要内容,如果未能解决你的问题,请参考以下文章

与 STO 检测统一

Sun/Oracle CORBA 实现是不是有任何线程池以及如何配置它?

Lync 客户端 SDK 控件的 UI 是不是有任何更改?

在 Python 2.7 的 scikit-learn 之外是不是有任何 K-means++ 实现?

RabbitMQ 6种应用场景

Worklight 6.1:是不是有任何服务器调用要求在客户端进行加密缓存