【发布时间】:2015-04-30 22:48:46
【问题描述】:
我正在实现一个小型分布式系统(在 Python 中),其节点位于防火墙后面。在以下限制下,在节点之间传递消息的最简单方法是什么:
- 我不想在防火墙上打开任何端口或打孔
- 另外,我不想在我的网络之外导出/转发任何内部端口
- 时间延迟少于 5 分钟是可以接受的,但如果可能的话,更接近实时会更好。
- 1+2 → 我需要使用第三方,我的所有节点都可以访问。由此可见,我可能也想使用加密
考虑的解决方案:
- 电子邮件 - 通过设置每个客户端使用 IMAP/SMTP 连接的单独或共享的免费电子邮件帐户(例如 Gmail)
- Google 文档 - 使用共享的在线电子表格(例如 Google 文档)和一些 Python 库,通过轮询机制访问/更改单元格
- XMPP 使用与第三方服务器的连接
- IRC
- 租用便宜的 5 美元 VPS 并设置通过 SSH 转发的零 MQ 发布订阅节点(或任何其他协议)并让所有节点连接到它
是否有其他可用的公共(免费)可访问消息队列(或可能被误用作消息队列的平台)?
我知道设置我自己的消息代理(RabbitMQ、Mosquito)等的解决方案,并以某种方式让我的节点可以访问它(ssh 转发到第三台主机等)。但我的问题主要是关于任何不需要我这样做的解决方案,即任何利用已经可用/可访问的第三方基础设施的解决方案。 (即有没有我可以使用的公共消息代理?)
【问题讨论】:
标签: python message-queue messaging distributed distributed-system