优维低代码:关联微应用和Feature Flags 特性开关

Feature flags大幅度提升DevOps性能,助力成为顶级研发团队 使用Feature Flags工具与平台,可以让软件的发布更快、更安全。而量化"发布更快、更安全",我们可以从DevOps性能去分析和量化。这篇文章,我们使用谷歌团队历经7年,根据来自32000名专业人士的数据,制定的DORA(DevOps Research and Assessment)指标,来分析feature flags系统如何提升DevOps性能,量化"更快、更安全"。 (上图来自https://www.devops-research.com/research.html) DORA主要使用四个指标 阅读详情

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。


连载第三十二期

《高级指引:关联微应用和Feature Flags 特性开关》

▽

1.关联微应用

在某个微应用的左侧菜单中,可以显示一些关联的其它微应用的菜单。

# 配置方式

首先,在需要显示关联微应用的菜单配置中设置 showRelatedApps: true,参见 SidebarMenu。

然后,在「小产品_模型关联小产品列表」(模型 ID:_OBJECT_MICROAPP)中配置相关信息:

  • 针对每个需要关联的微应用添加一条实例记录。
  • 正确填写相关字段,其中:

○模型 id: 这一组微应用公共的领域模型 ID(通常是 cmdb 模型 ID),关联微应用将以这个字段作为分组依据

○小产品子页面路径: 关联的小产品的路由 URL 地址,其中通常应包括一个共同的参数注入占位符。

○排序序号: 小的数字在前。

例如:

2.Feature Flags 特性开关

开发中的特性或个别客户定制化的特性可以通过全局特性开关来控制。

# 配置

生产环境

生产环境的特性开关配置在 api_gateway 组件下的conf/conf.yaml文件中的
auth.bootstrap.sys_settings.feature_flags 一节中,配置形式为开关名作 key,是否启用的 Boolean 值作 value。

# 注意不要重复配置已有的相关字段。
auth:
  bootstrap:
    sys_settings:
      feature_flags:
        your-feature: true
        your-another-feature: true

# 本地开发环境

⊙ NOTE

从 brick_next v2.0.1 开始,默认使用远端模式(即 --remote ),需要使用 --no-remote 来启用本地模式。

从 brick_next v2.7.7 开始,在远端模式下将自动启用合并设置(即 --merge-settings),需要使用 --no-merge-settings 来取消合并设置。

当本地开发 yarn serve 使用远端模式时(默认),这些设置将使用远端返回的数据与本地设置进行合并。通过配合使用 --local-settings 或 --no-merge-settings 可以指定完全使用本地设置(本地仓库的 dev-settings.yaml),或完全使用远端设置。

当本地开发 yarn serve 使用本地模式时(即使用 --no-remote),这些设置将从本地仓库的 dev-settings.yaml 读取,它的格式与上述 sys_settings 的格式一致:

feature_flags:
  your-feature: true
  your-another-feature: true

# 使用

在 Storyboard 中可以使用求值表达式来引用特性开关:

brick: "your-brick"
properties:
  hidden: '<% FLAGS["your-feature"] %>'

在构件中,可以使用 Runtime 接口获得开关配置:

import { getRuntime } from "@next-core/brick-kit";


function YourComponent() {
  const featureFlags = getRuntime().getFeatureFlags();
  const enabled = featureFlags["your-feature"];
  // ...
}

# 常用开关配置

Feature Flags,也称为特性开关或特性开关模式,是一种软件开发策略,用于控制在特定环境中启用或禁用新功能或特性 Feature Flags,也称为特性开关或特性开关模式,是一种软件开发策略,用于控制在特定环境中启用或禁用新功能或特性。它允许团队在发布新功能时对一部分用户开启,以便收集反馈并逐步推广。truefalse通过这种方式,开发者可以在不更改核心代码的情况下,灵活地控制新功能的部署范围,便于管理和测试迭代。 阅读详情

相关推荐

微服务设计模式 - 特性标志(Feature Flags)

特性标志是一种强大的技术手段,它在云计算和微服务架构中具有广泛的应用。通过特性标志,开发团队可以降低风险、快速迭代、进行 A/B 测试和实现动态配置。在微服务架构中,特性标志可以用于新功能发布、性能优化等场景。通过合理地使用特性标志,可以提高软件开发的效率和质量,为用户提供更好的服务体验。

2404_88048702的博客 1851

Feature Flag 功能发布控制

背景 产品在新功能发布前,可能会采取小流量测试的方式,或者在确定方案前使用A/B测试来衡量。一般开发人员会跟运维同学合作,通过一些现有平台切换机器或者流量来实现。本文介绍了另外一种简便的方式,并解释了其在持续集成上的应用,同时提供了现有的开发框架供快速使用。   Feature Flag VS Feature Branches Feature Flag(又名 Feature Toggl...

new03的专栏 1013

Feature Flags对产品迭代加速的影响(降低试错成本、提高试错速度与准确性)

背景 互联网产品的特点:用户规模大、版本更新频繁。新版本的每次上线,产品都要承受极大的压力。所以产品在新功能发布前,可能会采取小流量测试的方式(灰度发布),或者在确定具体方案前使用A/Bn测试来实验多个版本。实际问题是,如何在快速迭代中保证产品质量,如何在快速试错的同时尽量避免不诚实的产品影响到实际用户呢?现有的解决方案一般是开发同学会跟运维同学深度合作,通过一些现有平台切换机器或者流量来实现。本文会介绍一种简便的方式,并解释了其在敏捷开发,快速迭代中的实际应用。 Feature Flag Feature

weixin_45889536的博客 995

使用 Feature Flags 与可观测工具实现数据库灰度迁移

使用观测云与 FeatBit 通过双写双读的操作方式实现降低数据库移植风险的基础方法

观测云的博客 885

feature_flags

功能标志 有条件地使用Redis推出功能。 安装它 gem install feature_flags 工作原理 初始化feature_flags对象。 我将其分配给全局变量。 # Usage: FeatureFlags.new(redis, namespace, group_size) $redis = Redis . new $feature_flags = FeatureFlags . new ( $redis , 'namespace' , 100_000 ) 城市标志== A city can have a feature in two states. Beta / Live. To check the state of a feature in a city, returns 'live' / 'beta' / 'inactive' $feature_flag

【论文学习】《Fully-Convolutional Siamese Networks for Object Tracking》2016年SiamFC 全卷积孪生网络用于目标跟踪

在这项工作中,我们脱离了跟踪中采用的传统在线学习方法,并展示了一种专注于在离线阶段学习强嵌入的替代方法。与在分类设置中的使用不同,我们证明,对于跟踪应用,孪生全卷积深度网络能够更有效地使用可用数据。这不仅反映在测试时,通过执行有效的空间搜索,也反映在训练时,其中每个子窗口都有效地代表一个有用的样本,而几乎没有额外的成本。实验表明,深度嵌入为在线跟踪器提供了自然丰富的特征来源,并使简单的测试时策略表现良好。我们相信这种方法是对更复杂的在线跟踪方法的补充,并期望未来的工作能够更彻底地探索这种关系。

SkyLeopard的博客 2421

推荐一款强大的Go语言特性管理库——feature-flags

推荐一款强大的Go语言特性管理库——feature-flags 项目介绍 在软件开发中,特性开关(feature flags)是一种非常实用的策略,它允许你在不部署新代码的情况下开启或关闭应用的特定功能。今天我们要向你推荐一个由AntoineAugusti开发的Go语言实现的特性管理API库——feature-flags。 这个库依赖于Boltdb/bolt,一个轻量级的键值存储,以及Gorill...

gitblog_00032的博客 485

抓包工具(五)2025版 Burp Suite Professional的下载、安装、使用

抓包工具(五)2025版 Burp Suite Professional的下载、安装、使用

ACGkaka的博客 2万+

特性标志管理工具 - feature-flags 指南

特性标志管理工具 - feature-flags 指南 项目介绍 特性标志(Feature Flags) 是一种软件开发策略,允许团队在不部署新版本的情况下启用或禁用特定功能。本项目 feature-flags 提供了一种简单而灵活的方式来实施这一策略,特别适用于希望控制功能发布流程的开发者和团队。它支持多种编程语言环境,使得在应用程序中实现特性开关变得轻而易举。 项目快速启动 为了快速开始使...

gitblog_00484的博客 681

OpenClaw 3.13 + Mac mini M4 集成 qmd 记忆存储:qmd embed 卡死 / 报错 sqlite-vec 不可用 终极解决教程

模型加速让 qmd 从国内镜像下载模型,避免网络超时;SQLite 扩展支持:修改 qmd 源码后,Bun 不再使用内置 SQLite,而是调用 Homebrew 安装的,该版本支持接口,可正常加载vec0.dylib向量扩展;OpenClaw 3.13 适配:核心逻辑与 OpenClaw 3.13 的 qmd 记忆调用逻辑完全兼容,无需额外调整;sqlite-vec 加载:qmd 自动通过sqlite-vec包获取vec0.dylib路径,调用完成向量扩展加载,实现高效向量搜索。

wuanxionglidui的博客 1305

Python量化交易入门:天勤量化TqSdk保姆级教程(含避坑指南)

本文提供Python量化交易入门指南,重点介绍天勤量化TqSdk的使用方法,包括环境配置、核心API实战、策略开发技巧及实盘部署。教程涵盖中国期货市场,帮助个人投资者快速掌握量化交易技术,避开常见陷阱。

weixin_29065791的博客 836

Qwen Code 跑起来:终端里的 AI 代码助手十分钟上手

Qwen Code 是开源的终端 AI 编码助手,能读写代码、执行命令、接各种模型。这篇文章带你把它装进机器、确认它是活的,再接进日常开发流程。 装之前先过一遍清单,免得中途卡住: - 终端环境:Linux / macOS 用 Bash,Windows 用 PowerShell 或 Git Bash - Node.js 22.0.0 及以上版本(走 npm 安装时) - 网络:能访问 npm

gitblog_00073的博客 788

解决Google Play签名问题:Android App Bundle上传指南

摘要:本文分享了解决Android App Bundle上传至Google Play时遇到的签名问题的经验。当使用pepk.jar工具加密私钥时,出现"NoSuchAlgorithmException"错误。解决方案包括:确保使用JDK 11+版本、更新pepk.jar工具、验证密钥库信息,并提供详细命令行示例。通过升级开发环境和正确配置签名参数,最终成功生成加密密钥文件。文章为开发者提供了实用的技术参考,强调耐心排查问题的重要性。(149字)

m0_62153576的博客 148

Feature Flags功能特性深度解析

Feature flags是Rust生态系统中最具表现力的设计模式之一,它通过编译时条件编译实现代码的模块化和可选功能。这种机制不仅是技术工具,更体现了Rust"零成本抽象"的哲学——未使用的功能不会产生任何运行时开销。深入理解feature flags的设计原理和应用场景,是构建灵活、可维护库的必备能力。

weixin_62741976的博客 825

lammps案例:聚乙烯和石墨烯界面pull out模拟

大家好,我是小马老师。 本文介绍lammps模拟计算界面结合力的一个案例。 本案例参考论文《The interfacial mechanical properties of functionalized graphene- polymer nanocomposites》,对论文作者表示感谢。 模型共分2层,上层为聚乙烯模型,下次为单层石墨烯,模拟过程共分3部分:建模、弛豫、拉伸。 (1)建模 使用MS建立聚乙烯和石墨烯模型,具体方法可参考之前的推文,使用build layer方法建立聚乙烯和石墨烯组合模型,

lammps_jiayou的博客 3496

【嘉立创EDA】PCB金属包边设计快捷方法

本文使用嘉立创EDA,描述如何在PCB设计时,快速增加边框包边设计,特别是金属包边(伪)——这里标记(伪)是因为该这里的包边特指不含边缘壁。请参考本文时特别注意!本文将此过程记录,以供有需要的读者参考。

l64481000的博客 1746

SwiftUI 内功之 feature flags的使用

Swift中的feature flags 在为应用开发新功能时,采用某种形式的机制逐步推出新的实现和功能可能非常有用,而不必一次向每个用户启动。 这不仅可以帮助“降低”重大更改的启动风险(如果出现问题,我们可以随时回滚),还可以帮助我们收集有关部分完成的功能的反馈,或使用A / B等技术进行实验 测试。 功能标志可以充当这种机制。 从本质上讲,它们使我们可以在编译时或运行时在某些条件下关闭代码库的...

iCloudEnd的博客 1411

RK3588更新NPU驱动的方法

想要在 RK3588 上跑一下 deepseek 的大模型,发现目前的内核提供的 NPU 驱动比较低,无法支持新的大模型,所以需要更新一下我们的 NPU 驱动本次更新的NPU驱动仅适用于RK3588和RK3676系列。

荻夜的博客 2151

配置中心 App Configuration (二):Feature Flag 功能开关特性

写在前面Web服务开发过程中我们经常有这样的需求:某些功能我必须我修改了配置才启用,比如新用户注册送券等;某个功能需到特定的时间才启用,过后就失效,比如春节活动等;某些功能,我想先对10%的用户开放,验证没问题后再逐步全量开放等;这就是功能开关。日常开发中功能开关我们一般是写到配置文件里的,根据不同的配置,做不同的逻辑;但,其实.net core是对功能开关有官方支持的,...

dotNET跨平台 676

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

5_Harness驾驭工程Feature Flags:功能开关与渐进式发布

摘要 Harness Feature Flags 提供了一套完整的功能开关管理方案,超越了简单的if-else实现。其核心能力包括: 精准的目标规则控制(按百分比、用户属性、环境、地理位置等维度) 支持多变体开关,便于A/B测试 提供多语言SDK(Java/Node/Go等)和企业级Agent Relay 包含开关管理、变体配置、数据分析等完整功能 支持渐进式发布、灰度发布等现代部署策略 该系统解决了大规模分布式环境下的功能开关管理难题,使团队能够安全、可控地发布新功能。

模界 | AI工程化实践者 245

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Sakana!石蒜模拟器物理引擎优化:惯性、衰减与粘性参数的数学原理与调优技巧

Sakana!石蒜模拟器是一款基于物理引擎的互动网页应用,通过调整惯性、衰减和粘性等核心参数,可以实现角色的自然摆动效果。本文将深入解析这些物理参数的数学原理,并提供实用的调优技巧,帮助开发者和爱好者打造更真实的摆动体验。 ## 物理引擎核心参数解析 ### 惯性(Inertia):决定摆动的"冲劲" 惯性参数控制角色摆动时的加速度和运动趋势,在代码中通过`inertia`变量定义,默认值为

gitblog_00006的博客 742

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

安卓开发-常用的设置

@Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         //去掉标题         requestWindowFeature(Window.FEATURE_NO_TITLE);         //设置全屏

baliang8的博客 389

Feature flag,一个让软件发布轻松不掉发的神技

作者 | Eugene译者 |香槟超新星,责编 | 夕颜出品 | 优快云(ID:优快云news)Feature flags 技术让软件发布轻松不掉发我可以确定的一点是,所有曾...

优快云资讯 3713

RabbitMQ:rabbitmqtcl工具的使用(7)--Feature flags、Queue、Definitions操作

1.声明 当前内容主要用于本人学习和复习之用,当前内容主要为使用RabbitMQ的命令行工具:rabbitmqctl 来操作Feature flags、Queue、Definitions(一些比较简单的操作) 当前内容主要来源:RabbitMQ官方文档 2.查看命令 Definitions操作 exoprt_definitions (导出Erlang的json数据配置) import_definitions (导入json配置文件) Feature flags操作 enable_feature_f

编程学习者的博客 2566
上一篇: 优维低代码:关联微应用和Feature Flags 特性开关
下一篇: 末期大咖云集:可观测性的应用创新与落地研讨会
优维科技EasyOps
博客等级 码龄5年 1483粉丝 395原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值