dot Redis 8 来了,它是开源的

了解更多

TELUS 的 Optik TV 服务通过 Active-Active Redis 获得更高可靠性

公司: TELUS
行业: 电信

客户

TELUS 是加拿大领先的电信公司之一,提供包括互联网、语音、娱乐和视频在内的产品和服务。Optik TV 是 TELUS 的电视产品之一,它是一项互联网协议电视 (IPTV) 服务,在加拿大西部和魁北克拥有超过 150 万客户。

挑战

TELUS 曾部署过 Redis 开源版,但在管理和维护其 Optik TV 关键任务应用的 Redis 可用性方面遇到了挑战。TELUS 面向客户的应用 Showcase 曾发生中断,导致负面的客户体验,包括关键菜单选项不可用,最终花费大量时间才完全恢复所有服务。

解决方案

在经历这些关键客户服务功能的可用性问题后,TELUS 迁移到 Redis Enterprise 以支持 Showcase 应用。该应用需要更高的可用性和故障转移支持,因为 Showcase 作为 TELUS Optik TV 客户个性化内容的中心枢纽,帮助他们发现最有可能观看的内容。

优势

在将 Redis Enterprise 部署到 Showcase 应用后,TELUS 在应用的弹性、可靠性和整体性能方面看到了显著优势。这使得 TELUS 的 DevOps 流程操作更简单、更可靠,并通过 Active-Active Redis 提供了更好的客户体验。即使发生 Redis 服务中断,Optik TV 客户也无法察觉。此外,Showcase 应用的两秒加载性能 SLA 只有在使用 Redis Enterprise 作为缓存解决方案后才得以实现。

TELUS 通过其 Optik TV IPTV 产品为加拿大西部和魁北克的 150 多万客户提供流媒体电视服务。公司的技术战略团队负责监督 Optik TV 与第三方服务的集成,例如 Amazon Prime、Netflix 和其他流媒体服务。

Showcase 是一款 Optik TV 应用,为客户提供对其所有本地和流媒体内容的无缝访问。Showcase 的设计旨在让人们轻松发现新的点播内容、观看录制内容和新剧集、关注他们喜爱的电视节目,甚至轻松地从中断处继续观看未完成的剧集——一切都触手可及。 

流媒体电视观众期待实时性能。这就是 Showcase 最初构建在 Redis 开源版上的原因。目标是使用 Redis 作为一种快速机制来高效地将数据传输到机顶盒上,因为没有其他数据库能够在最低延迟的情况下支持如此大的数据传输量。

据 TELUS 技术战略经理 Steve Allen 介绍,“由于我们通过 Showcase 向单个客户呈现的信息量巨大,我们不可能通过调整其他数据库来达到足够的速度。Showcase 项目启动时,我们得出的结论是,要么使用 Redis,否则应用加载时间就无法在三秒或更短时间内完成。”

一次中断。一天工作日的损失。以及受损的用户体验。

Showcase 利用了两个 Redis 部署,一个位于埃德蒙顿,另一个位于卡尔加里。TELUS 配置缓存使用主备(active-passive)方法,埃德蒙顿有一个主 Redis 集群,卡尔加里有一个副本。 

Showcase 已经成功依赖 Redis 开源版四年,然而当发生故障时, TELUS 的技术团队花了一整个工作日才手动启动一个冷备用实例这项任务既耗时又繁琐。服务中断解决时间越长,对客户体验和品牌声誉造成的损害就越大。

考虑到 Showcase 的性能风险,TELUS 知道他们需要一个企业级缓存,以提供更高的可靠性和故障转移能力,从而避免未来长时间的服务中断。那次中断导致 Showcase 服务暂停了一整天,但团队已经付出了沉重的代价长达 24 小时受损的用户体验。 

可以理解的是,领导层对此类事件为何会发生表示担忧,并强调进行适当的事件后评估的重要性。

采用一个开发和运维人员都喜爱的数据库

Showcase 服务中断几个月后,Steve Allen 接管了 Showcase 的开发团队经理一职。作为团队中的开发人员,Allen 亲身经历了那次事件,因此他已经很熟悉在 Redis 开源版上运行如此密集的应用所面临的困难,以及一旦发生停机可能造成的后果。

Allen 说:“过去六年来,TELUS 一直在进行 DevOps 转型,这使得开发和运维部门更加紧密合作,我们不再是简单地将功能扔给运维团队去处理。” “我们一直在审视系统故障时的运营响应方面的脆弱性,考虑到 Redis 在我们首要应用中的大量使用,它是我们重点关注的对象。”

鉴于 Showcase 应用近期发生的事件以及对简化开发和运维的总体关注,对于开发团队来说,从开源版迁移到 Redis Enterprise 并为团队的成功和扩展做好准备,这是一个绝佳时机。 

Allen 分享道:“对我们来说,这不仅仅是一个简单的金钱上的商业案例。更重要的是获得企业级客户支持的运营可用性,以及 Redis Enterprise 无需人工干预即可提供高可用性这一事实。”

鉴于 Showcase 每月产生数亿笔事务,Redis Enterprise 能够以高可用性无缝处理大量实时数据。

Allen 补充说:“我们对缓存,特别是 Redis 的监控立场,已经从基本上什么都没有,提升到非常高的水平,当出现问题时,它成为我们第一个知道的系统。”

Redis Enterprise 彰显了 TELUS IT 团队的实力

部署 Redis Enterprise 几个月后,又发生了一次重大事件:埃德蒙顿和卡尔加里之间的服务器链接断开,导致 TELUS 与其在卡尔加里的所有服务器失去连接。如果 TELUS 没有安装 Redis Enterprise,后果将是灾难性的,因为服务器无法迁移回埃德蒙顿。 

然而,TELUS 及其客户不仅没有经历中断,甚至不知道故障已经发生。Redis Enterprise 的集群管理系统在 TELUS 内部任何其他系统之前就发送了关于卡尔加里服务器中断的警报。

这得益于 Redis Enterprise 的 Active-Active 地理分布功能,它使 TELUS 在面对中断时实现了零停机时间和对应用零影响。埃德蒙顿和卡尔加里的 Redis Enterprise 集群都作为主部署运行,并使用单一终端。流量会自动路由到健康的集群。 

Allen 指出:“两年前发生中断时的恢复过程我们需要几周时间才能恢复。使用 Redis Enterprise 后,我们没有注意到任何问题。我们只是收到了 Redis 的大量警报,然后我们就解决了问题。如果当时仍在使用开源版,丢失 Redis 会影响我们十几个应用整整一天,这是完全有可能的。” 

得益于 Redis Enterprise 的可靠性和易于扩展性,TELUS 现在对整个公司的 Optik TV 应用性能有了更大的信心。这使得技术战略团队能够展示他们的技能,交付大量依赖 Redis Enterprise 的应用,并且用例还在不断扩展。 

Allen 总结道:“现在,除了 Showcase 之外,我们还有大量应用依赖于 Redis Enterprise,因为我们对我们的系统和缓存方法更有信心了。如果我们的系统将来发生故障,我们已经能够避免客户来电和领导层升级问题。”