集群模板支持 [高可用性] [冗余]

我提议在 templates 文件夹中添加以下内容:

  • postgres.master.yml
  • postgres.slave.yml
  • redis.master.yml
  • redis.slave.yml

这样一来,Discourse 集群化以及围绕该主题的所有烦恼都将消失。

据我理解,Redis 容器由于消息总线的唯一事务限制无法直接复制,但似乎可以实现复制。

架构优势?

  1. 能够在主节点上引导启动(web.template.yml + web.template.yml + redis.master.yml),而仅在从节点上引导启动(web.template.yml + postgres.slave.yml + redis.slave.yml),无需回连主节点。这将显著减轻压力,并充分利用前置 Nginx 负载均衡器的能力。

  2. 在管理仪表板中实现雄心勃勃的 UI 集群化支持将成为可能!

Discourse 可以说是迄今为止创建的最先进的开源应用程序之一,感谢背后的团队打造出如此前沿的技术。

即使未配置高可用故障转移,这也对流式备份很有用。您是否已为这类文件创建了包含建议内容的拉取请求?

以这种方式在多个节点上部署时,您期望如何管理数据库更新以升级到新版本的 PostgreSQL 主版本?