99.99% 邮件可用性从何而来?群晖 MailPlus 高可用架构解析

双活集群、实时同步与脑裂自愈,支撑 1500 名员工、日均 17 万封邮件

群晖近日披露,其内部邮件服务 MailPlus 在生产环境中长期保持 99.99% 的可用性,支撑超过 1500 名员工,每天处理逾 17 万封电子邮件。对于企业邮件系统而言,这一数字背后并非简单的硬件冗余,而是一套围绕高可用性(HA)构建的韧性工程体系。

按照常见 SLA 标准,99.9% 的可用性意味着每月最多允许约 43 分钟停机;而 99.99% 则将停机时间压缩到每月约 4 分钟,相当于每周不到 1 分钟。群晖表示,MailPlus 能够达到这一水平,关键在于其 MailPlus High Availability 方案采用了双活集群设计。

与传统主备模式不同,MailPlus HA 让两台服务器同时处理请求。管理员可以在一台节点上进行更新或维护,另一台继续为用户提供服务。这种架构不仅降低了计划内维护带来的中断,也减少了突发故障造成的计划外停机。

同步难题:不是复制文件那么简单

要让两台邮件服务器保持高度一致,远比复制文件复杂。邮箱数据始终处于动态变化中:新邮件不断到达,用户也在持续阅读、移动或删除邮件。因此,MailPlus 团队首先需要解决的是同步引擎的实时性、效率和准确性。

MailPlus 没有采用将所有用户数据集中存放的单体数据库,而是为每个用户建立独立目录,用于保存其邮件数据和配置。元数据仍可能通过中央服务进行索引或跟踪,但核心邮件和用户专属文件彼此隔离。这种设计带来两项优势:一是缩小故障影响范围,某个用户邮箱损坏或同步异常时,不会波及其他用户;二是实现细粒度同步,当某个用户数据变化时,只需同步该数据集,而不必传输整个邮件存储。

在同步机制上,MailPlus HA 采用面向任务的方式。每一次邮箱操作,例如接收新邮件、移动邮件或删除文件夹,都会被记录为任务,并进入有序队列。两台服务器按顺序处理任务、交换更新,并确认成功应用后再继续下一项。若出现同步冲突,例如网络波动导致用户同时与两台服务器交互,系统会结合时间戳和任务顺序判断优先级,从而保证结果准确。

脑裂恢复:预防之外再加一层协调

在 HA 集群中,脑裂被视为最危险的故障之一。当两台服务器之间的连接中断,但双方仍保持在线时,它们可能都误以为自己应承担主角色,进而各自接收邮件、处理用户操作。连接恢复后,数据冲突可能造成不可逆损失。

传统做法通常依赖第三方见证服务器或仲裁规则,判断哪台服务器应保留主角色。这类方法虽然有效,却会增加架构复杂度,并引入新的潜在故障点。例如,见证服务器离线时,容错能力可能受到影响。

MailPlus 的思路是在预防机制之外,再叠加冲突解决能力。系统内置协调逻辑,当一致性出现问题时自动介入,作为额外保障。

具体而言,MailPlus HA 在部署时会向主服务器和辅助服务器写入特定元数据,以确定优先级。两台服务器都可处理邮件投递,但只有主服务器能够修改系统设置。若连接中断,辅助服务器会继续投递邮件,同时将配置改为只读模式。连接恢复后,系统会自动重新指定原先的主服务器。

随后,系统不会用一方数据直接覆盖另一方,而是执行差异检查,比较双方发生的变化,识别新邮件、删除和移动等操作,并判断各自独有的数据。在协调阶段,系统会尽量保留所有有效用户数据。例如,如果一台服务器记录某封邮件已被删除,另一台服务器却保存了对该邮件的回复,那么回复会被保留;如果两台服务器在断连期间各自收到新邮件,这些邮件也都会被保留。

不止是一台故障转移服务器

群晖强调,部署 MailPlus HA 并不只是增加一台备用服务器,而是获得一套具备多层保护机制的韧性系统。从保障数据一致性的实时同步,到能够处理脑裂场景的自动恢复机制,该系统旨在无需人工干预的情况下维持服务连续性与数据完整性。

对于企业管理员而言,这意味着可以更放心地“设置后即可不管”——在后台,一套智能而可靠的系统正持续守护邮件服务的稳定运行。


上一篇: 没有内容了

推荐产品 / Product
点击查看更多
留言表单
姓名为必选
电话为必选
公司为必选
地址为必选
邮箱为必选
留言为必选

感谢您的提交

确 定

表单提交失败

确 定

Copyright © 2011-2020 北京群晖时代科技有限公司 版权所有 京ICP备2020037175号-2

  • TOP