风险与需求

我们通常会引入三方平台工具或插件,帮助自身产品提供更好的客户体验,比如数据分析工具、用户引导、客户成功工具等。为此,通常需要把三方工具 SDK 集成到项目中,但这类 SDK 会对网站应用做 DOM 操作,存在使产品无法正常运行的风险,如:

  1. 某些用户的浏览器环境下,三方 SDK 使产品不能正常运行
  2. 三方平台进行了错误的更新,导致产品部分功能瘫痪
  3. 海外的三方插件,网络不稳定或有法律风险

一旦发生风险可能会造成不可避免的经济损失。

解决方案

通过敏捷开关(featureflag.co)提供的 Feature flag 在生产环境渐进式发布与回滚三方工具的功能特性。如下图所示,当 Feature flag 返回值为 true 时,则执行三方工具初始化代码,否则不执行(假设三方工具不被初始化,就不会被执行)。暂时无法在飞书文档外展示此内容

代码集成

如下为码示例。在第二行代码中,使用敏捷开关的 SDK 获取 Feature flag "三方插件工具"的返回值,如果为 true,则初始化三方工具,否则什么都不做。

if (ffcService.flags['三方插件工具'] === true) { thirdTool.init('{key}', { id: auth.id });
}

渐进式发布

为了避免风险,我们采用如下的发布机制:

  • 第一步,上线后不对任何用户开放
  • 第二步,在生产环境对内测团队开放
  • 第三步,发布给10%的公众用户
  • 第四步,发布给30%的公众用户
  • 第五步,发布给100%的公众用户

第一步,在集成了三方插件工具的新版产品上线时,在敏捷开关后台设置 Feature flag "三方插件工具"返回值为 false,使产品不对任何用户开放。

第二步,在 Feature flag 的"自定义规则"中引入内部测试团队,即三方工具只对内测人员开放。如下图所示,在"目标用户"和"自定义规则"区域,分别设置 Feature flag 对内测成员返回 true :

  1. 在"目标用户"模块的 true 返回值下添加会参与内测的目标用户。
  2. 在"自定义规则"模块中,建立一个对“开发组”和“内测团队”用户组返回 true 的规则。

三步,如果在内测过程中出现问题,则可以反馈给第三方团队等他们的 BUG 修复。如果三方工具在内测环节表现良好,则可以开始向公众用户进行渐进式发布。如下图所示,将默认返回值按百分比设置,给 10% 的用户返回 true, 90% 的用户返回 false。

如果有 BUG 出现则可以将返回值设置为 100% false,0% true 的方式实现秒级回滚。如果可以精准的知道是哪些用户有BUG,则可以通过"自定义规则"针对具体用户进行回滚。第四步,如果第三步没有任何异常,则可以扩大用户的发布百分比,将默认返回值百分比设置为 30% 的用户返回 true, 70% 的用户返回 false。如果出现 BUG,可以按照第三步所描述的方式进行回滚。第五步,如果第四步没有任何异常,则可以扩大用户的发布百分比,将默认返回值百分比设置为 100% 的用户返回 true, 0% 的用户返回 false。如果出现 BUG,可以按照第三步所描述的方式进行回滚。

总结

通过使用 Feature flag 控制三方工具,大幅度降低了其发布上线的风险。即使在未来的使用中因为三方工具的更新产生了BUG,我们也可以通过敏捷开关的后台快速的回滚下线三方工具,保障产品的整体稳定性,降低风险。同样,这种操作可以适用于大多数新功能发布、功能更新的场景。

规避三方工具带给产品的潜在风险相关推荐

  1. visio studio json工具_《产品经理入门指南》彩蛋2:别技淫原型图!你的Visio和Balsamiq Mockup入门了吗?...

    温馨提示: 如果你有关于产品经理方面的任何问题,欢迎关注我的微信公众号与我互动.最新的免费系统的产品经理课程<老司机带你做产品>已经推出,请关注微信公众号:iamliuwenzhi 很多产 ...

  2. CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念)、早期/中期/近期应用领域(偏具体应用)、经典CNN架构(偏具体算法)概述、常用工具/库/框架/产品、环境安装、常用数据集、编程技巧

    CV:计算机视觉技最强学习路线之CV简介(传统视觉技术/相关概念).早期/中期/近期应用领域(偏具体应用).经典CNN架构(偏具体算法)概述.常用工具/库/框架/产品.环境安装.常用数据集.编程技巧 ...

  3. 【问题解决方案】电脑使用微信等第三方工具给鼠标右键和下拉列表截图

    参考链接: 电脑截图方法:给鼠标右键和下拉列表截图 问题: 当使用微信等第三方工具给鼠标右键和下拉列表截图时,一按快捷键组合往往右键和下拉列表就没有了. 解决: 方法一:使用电脑自带的截全屏功能,按下 ...

  4. UltraEdit_chinese_64.exe强大的记事本工具(带官网离线安装包和破解工具)破解教程

    ​ 提供 UltraEdit_chinese_64.exe软件的破解教程,以及相关资源下载. 文章目录 本博文的简述or解决问题? 下载安装包: 说明: 下载工具推荐: 安装步骤: 破解激活: 破解成 ...

  5. 创见内存卡修复工具带数据恢复RecoveRx Tool v2.0

    RecoveRx Tool可以格式化修复手机内存卡.给内存卡加密.移除密码以及擦除SF/CF卡. 除了修复外,它还是创见(Transcend)专用的记忆棒.SD/XD/MMC内存卡.U盘.数码相框.M ...

  6. 2023最新站长必备在线工具箱系统源码 含上百款工具 带后台版本 自适应模板 优化修复版

    简介: 2023最新站长必备在线工具箱系统源码 含上百款工具 带后台版本 自适应模板 优化修复版 刀客搭建看了一下,系统一切正常可用,就是后台登录方式这一块使用的是QQ扫码登录的,建议有能力的可以改一 ...

  7. LabVIEW视觉尺寸测量 范例包含尺寸测量和数据库工具带三菱plc通讯

    LabVIEW视觉尺寸测量 范例包含尺寸测量和数据库工具带三菱plc通讯. 包含一份软件调试说明书及调试操作视频! 现有:69100614186286191苏州工控代理商

  8. 计算机辅助设计主要设计工具,常用工具计算机辅助设计Ⅱ--产品外观设计.ppt

    常用工具计算机辅助设计Ⅱ--产品外观设计 计算机辅助设计Ⅱ--产品外观设计 建立圆角曲线(倒角)(Fillet Curve) ?菜单 : Curve 〉 Fillet 命令 : Fillet 说明 : ...

  9. 便民查询工具php源码,超强全能查询工具带后台功能强大PHP版 查询源码下载

    PHP版全能查询工具带后台功能强大,程序运行环境必须同时支持PHP+ASP,由于后台和部分功能由ASP程序开发,否则无法运行.程序演示:cha.wa86.com (目标网站仅供参考) 使用说明: 程序 ...

最新文章

  1. cnn中关于平均池化和最大池化的理解
  2. vs调试c语言检查内存泄露,VisualStudio中检查内存泄露方法
  3. leetcode101. 对称二叉树(两种做法)
  4. java apk安装路径_android apk安装过程源码解析
  5. iqooneo系统要不要更新_IQOOZ1即将发布,和IQOOneo3、OPPORenoACE对比,谁更值得入手?...
  6. 线段树基础操作--单点or区间更新+查询
  7. 云服务器上搭建hadoop伪分布式环境
  8. DevExpress DXperience最新版订阅加载程序
  9. 2019年末逆向复习系列之从猫眼字体反爬分析谈谈字体反爬的前世今生
  10. LoRaWAN协议格式
  11. 计算机小喇叭找不到,电脑右下角小喇叭不见了(解决方案)
  12. 1 进 2 出 HDMI 1.4 分配器,带 HDCP 引擎、抖动清除和信号中继
  13. SEPIC 单端初级电感转换器 稳压器 -- Zeta 转换器
  14. 蚂蚁金服区块链+公益又有新动作,助力相互保险爱心救助账户
  15. android 判断安装微信,Android开发中判断手机是否安装了QQ或者微信
  16. ChromeDriver与Chrome版本对应关系及下载链接
  17. 单片机编程入门学习 这几问你能回答吗?
  18. [再寄小读者之数学篇](2015-05-01 求渐近线)
  19. ASP.NET各种项目源码
  20. Dialog确认框重复提交的问题

热门文章

  1. 2012年最值得学习的IT视频资料及技术资讯类网站列举
  2. 模电multisim实验
  3. vue 音乐软件完结篇
  4. 知名站长工具服务商:爱站网突然关站
  5. idea设置了默认换行符,ctl + s 保存文件时换行符没有变成默认换行符 解决方法
  6. ODBC方式与OCI方式对比
  7. Flutter | bloc 之 state 使用优化
  8. exit和_exit,fock和vfock
  9. 仿百度外卖、美团外卖、淘点点等左右联动ListView菜单展示
  10. 成人脑力训练 3.951