加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

部署 – Docker容器上的分布式系统NSQ拓扑模式

发布时间:2020-12-16 03:52:15 所属栏目:安全 来源:网络整理
导读:是否可以使用Docker复制“Topology Patterns”的最后一个示例中描述的“NSQ实时分布式消息传递平台”?有没有人有dockerfile或图像示例? 最佳答案 在我等待一些后台任务完成的时候,我会对此采取行动. @Luca G. Soave提到的分布式消息传递平台可以在这里看到

是否可以使用Docker复制“Topology Patterns”的最后一个示例中描述的“NSQ实时分布式消息传递平台”?有没有人有dockerfile或图像示例?

最佳答案
在我等待一些后台任务完成的时候,我会对此采取行动.

@Luca G. Soave提到的分布式消息传递平台可以在这里看到:

我认为这个问题从根本上讲是一个致命的问题:对Docker容器的误解.

出于讨论的目的,让我们假设Docker容器只是虚拟机的不同名称. “可以使用虚拟机构建分布式系统吗?”不太合适,因为它只是配置,抽象和协调的问题.

可以重新创建上图,每个联系点/职责(节点)都是独立于Docker容器或虚拟机中的.即:

>每个API / nsqd节点都在其自己的容器中
>每个nsq_to_file节点都在其自己的容器中
>每个nsqlookupd节点都在自己的容器中

根据您设置Docker镜像的方式,您可以通过多种方式实现此分布式(多主机)版本.一些想法是:

>将容器内部端口映射到同一主机端口,并将节点配置为将自己作为主机ip广播,以便当其他节点连接到它们时,它们将锁定到映射到容器的端口上的主机外部IP ;因此直接连接到容器.
>使用像consul这样的服务发现包来替换nsqlookupd以添加其他元数据.如果您运行许多容器,每个容器内部绑定到同一端口(例如端口9090),但允许主机上的docker进程管理随机外部端口映射,这将非常有用.

由于这与Docker有关,最近在主机上向相关容器广播信息方面有了一些进展;这将是使用nsqlookupd容器的信息为api / nsqd容器播种的一种方法.

我在使用MaestroNG进行小型部署方面取得了成功,但对于大规模的docker部署来说,它绝对不是一个很好的解决方案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读