定制软件功能开关怎么逐步放量
用户验收通过之后,功能开关先让一小群人用到新功能,再按错误和支持量决定放宽或把开关关回,不必整次发布回滚。变更记录回答谁核准改规格;上线切换回答第一次把正式环境交出去的顺序;回滚计划回答怎样退回一次发布;这一页回答功能已经在正式环境里时,怎样只对一部分人打开。
目录
功能开关和变更、切换、回滚分开写
范围变更回答的是规格要不要改、谁可以收下修改。上线切换回答的是切到正式环境那一晚的顺序、每一步由谁做、什么情况退回旧环境。回滚计划回答的是哪一个现象可以启动退回、谁做决定、这一次是还原数据还是退回整次发布。用户验收回答的是负责人有没有按清单把结果做出来。功能开关回答的是另一件事:验收已经签过,程序已经在正式环境里,新功能先对哪一群人生效,什么情况把生效范围收回,而不把整次发布退回。分别见 定制软件范围变更怎么管、定制软件上线切换怎么做、定制软件上线回滚怎么写、定制软件 UAT 怎么做。
交付仍走 定制软件、网站与应用程序。开关记录的封面写功能名称、旗标键、默认值,以及存放路径。验收清单上的句子不改写成放量比例。规格若还要改,回到变更记录,不在放量会议上把刚看到的画面写进规则。
开关是已部署程序里的另一条路径
2026年10月29日阅读的 OpenFeature 词汇 该页没有刊登日期。该页把功能开关定义成一种机制,让应用程序作者在已经部署的软件里写下另一条程序路径,并在运行时按一组规则决定走哪一条。该页并写明,旗标是逻辑上的一个转折点,带有类型,例如字符串、布尔或 json;旗标键是用来识别某一个旗标的字符串。词汇里的 redesign_enabled 只是例子,不拿来当这次的旗标键。
同一页把评估旗标值写成取出完整的旗标值,包括从已设定的提供者解析出的值,以及在运行异常时退回调用端提供的默认值。旗标管理系统是旗标值和规则的依据,可以是供应商的服务、自建,或开源实现。这份记录不指定采购哪一家。规则是评估时用来指定变体的条件。变体是值的语义名称,值的类型和旗标一致。
先点名的一小群,用覆写对上对象
2026年10月29日阅读的 OpenFeature 评估情境 该页没有刊登日期,第三节的状态标为 hardening。该节写明,评估情境提供旗标评估时的环境数据,可作为定向的依据,包括依规则评估、对特定对象覆写,或按比例做旗标评估。要求 3.1.1 写明,评估情境必须有一个可选的 targeting key,类型是字符串,用来识别这次评估的对象。该键唯一识别对象,对象可以是终端用户或调用的服务。提供者可以要求这个栏位,以便按比例评估、套用规则,或对特定用户覆写;解析时若没有这个键,这类提供者的行为可以无法预期。
一小群人的名单,就是对特定对象的覆写。每一行写 targeting key、旗标键、要返回的变体,以及谁在哪一天把这个人加进来。没有 targeting key 的账号不进名单。名单还没有行,不把按比例放量当成已经开始。加人或移出只改这份名单,不为了换人而重新发布。
按比例放宽时,比例由公司写下
词汇页把按比例评估写成:用情境里的一个属性,例如 targeting key,按已经设定的比例,以伪随机方式决定旗标值。该页用 50/50 作例。那是例句,不是这次必须采用的比例。要放到点名名单以外时,开关记录写下比例、依据的情境栏位、谁同意、哪一天生效。比例没有日期,就不按百分比放量。
评估情境可以包含用户、应用程序、主机或其他环境数据。该节举例,规则可以按电邮、地区或一天里的时段返回某个值。公司若要用部门或地区当条件,就把栏位名称写进情境,并写明它和 targeting key 怎样一起用。口头说先给一部分人,不代替这一行。没有稳定的 targeting key,该节写明有关提供者的行为可以无法预期,这次就不做按比例放量,只维持点名覆写。
放宽之前,先看错误和支持量
词汇页把追踪事件定义成一项用户动作或应用程序状态,代表一个业务结果,以唯一字符串识别,并用追踪接口记下。该页没有规定要记哪一种错误,也没有规定支持量的上限。放量记录另写两栏:看哪一份错误日志、看哪一个支持队列,以及和哪一段已经发生的日子比较。两栏没有日期,比例不往上调,点名名单也不扩大。
比较的结果写在同一行:错误是多了、少了,还是看不出差别;支持队列里数得出的件数是多少。件数来自队列上的单,不另估。超过负责人写下并注明日期的那一条线,就停在现有名单或现有比例。该页没有给这条线的数字。线还没写,就不把「看起来还好」当成可以放宽。
关回开关,不必退回整次发布
词汇页写明,另一条路径在已经部署的软件里,于运行时按规则决定。把变体改回关闭,或把比例和覆写拿掉,下一次评估就不再走新功能那一条。这一步不要求重新发布代码库。整次发布的退回、数据还原,仍看回滚计划,见 定制软件上线回滚怎么写。
谁可以把开关关回,写在记录上。这个人和谁可以放宽可以是同一人,两栏仍分开签名。关回时写范围是全部对象还是剩余的比例、生效时间,以及对上错误日志或支持队列的哪一行。原因不写成空的一句「先关」。没有这个人的签名,当值的同事不改规则。
评估失败时,回到写明的默认值
2026年10月29日阅读的 OpenFeature 旗标评估接口 该页没有刊登日期,这一节的状态标为 stable。该页写明,评估接口让旗标值的评估不依赖某一家控制面或供应商。没有提供者时,使用 No-op 提供者,只返回调用端提供的默认值。要求 1.3.1.1 写明,客户端必须提供按类型区分的评估方法,参数包括必填的旗标键、必填的默认值,以及可选的评估情境。默认值的类型是布尔、数字、字符串或结构。
同一页写明,评估调用不得因异常而中断;运行异常时必须返回默认值。提供者返回的类型和预期不符,也视为异常,应返回默认值。公司把这次的默认值写成关闭,并注明日期,使评估失败时不会改为对所有人打开。默认值空白,旗标不开始放量。默认值不写成「沿用上次成功的结果」,除非记录上另有一行说明提供者做得到,并有人签过。该页要求返回的是调用端提供的默认值。
名单、比例、观察和关回的人写上,才开始放量
旗标键空白、默认值空白、点名名单没有 targeting key,或可以关回的人没有名字,这个功能不对正式环境的用户放量。验收签过,只说明清单上的情境做过,不代替这些栏。
用三件事看放量有没有在管:生效范围是点名覆写,或一条有日期的比例;放宽前的错误和支持量写在同一行;关回只改旗标规则,而不把整次发布退回。有一项空着,开关维持已写明的默认值,不对名单以外的人打开。
