千家信息网

利用 Redis 来优化功能部署和错误分类

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,来源:Redislabs作者:Shabih Syed翻译:Kevin (公众号:中间件小哥)为了让系统运行更流畅,又避免 Knights Capital 在 2012 年犯下的 4.6 亿美元的错误,
千家信息网最后更新 2026年11月03日利用 Redis 来优化功能部署和错误分类

来源:Redislabs

作者:Shabih Syed

翻译:Kevin (公众号:中间件小哥)

为了让系统运行更流畅,又避免 Knights Capital 在 2012 年犯下的 4.6 亿美元的错误,一家领先的金融市场制造商的单日计算机系统故障给 IT 社区提供了一些教训,包括系统组件的设计、实现,和DevOps 的重要性。在这个由两部分组成的博客中,我将分享一些想法,以帮助开发团队保持其持续集成和持续部署(CI / CD)流程的安全, 特别的,我将展示如何使用特性开关和特性上下文来来管理持续更新,如何创建一个容易访问的日志数据库,一个可以快速查找的错误信息数据库--所有这些都借助 Redis。想象一下,您是一名工程总监,管理着一个由多个开发人员组成的团队,这些开发人员负责具有数千个并发用户的Web 应用程序的前端。您的应用程序已部署在 AWS 中,您需要每周推送新的版本,公司无法承受因Web 应用程序带来的任何破坏,因此如果发生错误,您的团队必须立即回滚到最近更新的版本。您必须快速识别出问题代码,让开发人员对其进行修复,并在后续对外发布,而且产品团队总是要求尽快提供新功能,因此您如何迅速对错误做出反应,并以业务需求的速度上线新功能?

在 2019 年游戏开发者大会(GDC)上,我参加了一个主题为"大规模调试:每月活跃用户超过 7 千万的跨平台稳定性"的议程,由Redis Labs 客户 Roblox 和 Chris Swiedler 共同主持,描述了一种可以可以支撑每周更新的软件发布过程。克里斯分享了他的团队如何在 Roblox 上修改应用程序行为而不改变代码,这样可以减少现网问题的发生。他们使用特性标记,这与 Martin Fowler 的"特性开关"方法非常相似。

新功能发布的示例 CI / CD 流程


让我们分解图 2,其中概述了可以作为CI / CD 和分类过程的一部分的方法:
1. 开发人员开始研究新功能;

2. 开发人员和产品管理团队决定哪些场景将使用新功能(可能仅针对部分用户);

3. 开发人员提出了一种切换策略,其中新代码和旧代码由" if and else"块分隔;

4. 一旦开发人员完成新功能代码的开发,他们便将Canary 版本发布到生产环境(借助 DevOps);

5. 人们在使用该应用程序中,根据其角色和切换,可以执行新代码或者旧代码;

6. 如果出现问题,可以将切换开关设置为false,以将所有用户转移到旧代码;

7. 一段时间后,该功能将升级为正式发布版本(GA)。

此策略可有助于:

1. 将canary 版本发布到生产中,以实时流量和真实用户(而不是模拟)进行测试;

2. 在不回滚任何代码的情况下即时禁用功能;

3. 通过切换特性开关启用功能或功能组合;

4. 可通过特性开关中的元数据轻松识别(对于大型开发团队而言)负责的开发人员。但是可以将这种方法前进一步,以帮助分布式开发团队安全地发布新功能,并在需要时以最小的影响回滚新功能。

Redis Enterprise 的 CI / CD

您需要快速,持久的数据库时,Redis Enterprise 非常适合。其功能包括:

  • 具有永久网络存储的完全托管的 Redis 数据库即服务,可防止实例数据存储丢失;

  • 跨多个 RedisEnterprise 群集创建的无冲突可复制的数据库,这些集群位于各地的不同数据中心,这提供高可用的双活和主备部署。

  • 强大的搜索功能(通过 RediSearch 模块)可跨数据库集群运行搜索查询。

为了让您的 CI/ CD 分流过程更加有效,在本系列的下一部分中,我将提供更多详细信息和代码段来具体展示如何使用 Redis 构建特性开关、特性上下文、错误数据库和日志数据库。

原文链接:https://redislabs.com/blog/using-redis-to-optimize-feature-rollouts-and-error-triaging/

更多优质中间件技术资讯/原创/翻译文章/资料/干货,请关注"中间件小哥"公众号!


开发 数据 代码 人员 团队 数据库 新功能 特性 功能 应用程序 版本 用户 程序 应用 错误 切换 中间件 方法 系统 过程 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网是第几次科技革命的成果 互联网下的科技发展 美国互联网科技 互联网科技的英文 电子科技大学互联网 有木互联网科技 富国互联网科技创新基金 互联网科技实习生岗位职责 常德市电业局互联网科技部 厦门千工互联网科技有限公司 千方科技属于互联网企业吗 江阴互联网智能科技产品进口 互联网媒体平台算高科技产业 乌鲁木齐新华智原互联网科技学校 洛阳共同富裕互联网科技有限公司 长沙茂晟互联网科技有限公司 无锡工业互联网科技有限公司 启辰互联网科技 互联网领先科技宣传片 悟空问答互联网科技 互联网科技园 中国互联网科技股 互联网金融 金融科技 广州凡科互联网科技 四个字互联网科技公司取名 开一家科技互联网公司需要多少钱 洛阳共同富裕互联网科技有限公司 长沙茂晟互联网科技有限公司 互联网科技快讯热点 东营紫格互联网科技
0