ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

免重新发布:用Unleash功能开关五步走完一次灰度上线

免重新发布:用Unleash功能开关五步走完一次灰度上线 免重新发布用Unleash功能开关五步走完一次灰度上线【免费下载链接】unleashOpen-source feature management platform项目地址: https://gitcode.com/GitHub_Trending/un/unleash 周五晚上八点生产环境的新支付流程对一部分用户开始报错。老流程是回滚代码、重新打包、重新部署然后盯着流水线跑完。而有了 Unleash你只需要在管理页把一个开关关掉流量立刻回到旧逻辑。Unleash 是一个开源的功能管理平台功能开关让你把代码部署和功能生效解耦——代码先上生产生不生效由开关说了算。如果你的团队还在靠改配置重新发版往下看。一行代码给你的代码加上功能开关功能开关就像墙上的电灯开关线路一直在合上开关灯才亮。Unleash 里的开关就是 feature flag代码里只需要一次判断if (unleash.isEnabled(AwesomeFeature)) { // 走新功能 } else { // 走旧逻辑 }新旧两条路径在同一个版本里共存。SDK 会在后台定期从 Unleash 服务器同步开关配置你的代码只负责读状态不负责定状态。说白了出问题时你的动作不是重新部署而是点一下。这张图就是 Unleash 的四个核心概念。项目Project用来归组开关并控制权限环境Environment代表开发周期的阶段比如开发、预发、生产一个功能开关在每个环境里都有独立配置激活策略Activation Strategy则决定这个环境里到底谁看到开关是开的。开关解决了开不开的问题那怎么从 0 平滑走到 100从 0 到 100一个开关的灰度发布之旅典型路线是开发环境全开生产环境先关着然后逐步调激活策略——先给选定的客户再放到 20% 用户最后到 100%。每一步都只是改策略参数一次发布都不用。用发布模板把灰度步骤标准化Unleash 更进一步提供了发布模板提前定义好里程碑选定客户 → 20% 用户 → 100% 用户把模板应用到某个开关后第一个里程碑会自动启动下一个里程碑点start再继续。灰度的节奏不再靠人记。让仪表盘自动盯住过期开关开关攒多了谁来管谁还在被使用仪表盘上的last seen列会显示每个开关最后一次被评估的时间Unleash 会自动把长期没人碰的开关标记为 stale过期。这是内置的技术债清理器删代码时心里有底。开关可以随时拨但很多人会先问一句我的用户数据会不会被传到服务器上本地评估为什么用户数据不过你的服务器Unleash 的答案是本地评估SDK 拉回来的只是一份开关配置清单这个用户符不符合条件这件事是在你自己的应用进程里算出来的。终端用户的数据不会离开你的应用顺手就绕开了 GDPR 和 Schrems II 那类合规问题。看架构就清楚了管理界面负责改配置Unleash 服务器负责配置管理应用里的后端/前端 SDK 在后台同步配置后本地求值。前端流量特别大时还可以在中间加一层 Unleash Edge 节点做缓冲主服务器就不会被打爆。15 个官方 SDK基本每种语言都有后端有 Java、Go、Node.js、Python、Rust前端有 React、Vue、iOS、Android一共 15 个官方 SDK另有十几个社区版。你的服务用什么语言判断语法都是前面那一行。配置是在管理界面里改的这块界面长什么样不只是开关列表管理界面与工具集成功能列表一览哪些开关开着、属于哪个环境、是什么类型Release、Experiment、Permission以及最后被谁看见过一屏看完。把开关接进你习惯的工具实际场景里产品同学想在 Jira 工单上看某个开关的状态。Jira 集成会在工单里直接挂一个 flag 面板各环境的开关状态当场就能拨。Slack、Teams 有现成的通知集成想接别的系统用 webhook 或者 API 全自动编排——官方口径是everything can be automated, no exceptions。看到这里如果还是纸上谈兵那就直接跑起来。三步在本地跑起Unleash需要 git 和 dockergit clone https://gitcode.com/GitHub_Trending/un/unleash cd unleash docker compose up -d浏览器打开 localhost:4242用默认的 admin / unleash4all 登录上面的仪表盘就摆在面前了。想再往下钻可以看后端 REST API 设计说明数据库是 PostgreSQL表结构演进都沉淀在 src/migrations/ 里。先拉下来跑个 docker compose up十分钟就能看到仪表盘然后把你的第一个开关拨一下试试。【免费下载链接】unleashOpen-source feature management platform项目地址: https://gitcode.com/GitHub_Trending/un/unleash创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表