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

news2025/1/11 9:01:51

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维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"];
  // ...
}

# 常用开关配置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/118327.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

图论(1):单源最短路的建图方式

一、单源最短路算法 最短路算法_yan__kai_的博客-CSDN博客 二、例题 1.acwing1129 题意解读&#xff1a;走过一条路存在花费c&#xff0c;求最小费用即求最短路。无向图 直接背模板&#xff1a; #include<iostream> #include<algorithm> #include<cstring&…

环形轨道运料电动葫芦无线控制系统的组成与功能

一&#xff0e;关于环形轨道运料电动葫芦的控制 目前电动葫芦的控制部分都是由PLC完成的&#xff0c;每个电葫芦内都有一台PLC&#xff0c;主站PLC一般设置在地面控制机柜内。由于电葫芦是在半空中移动工作的&#xff0c;与地面PLC的通讯问题一直是电葫芦设备运行中棘手的问题…

虚拟人,会成为品牌下一次逆势的解药吗?

如果说2021年是虚拟偶像的崛起元年&#xff0c;那2022可以称得上是爆发期了&#xff0c;一方面&#xff0c;定位国风、时尚博主、模特、歌手的虚拟偶像数量激增&#xff0c;被冠以“首位”、“行业第一”等称号的新面孔轮番出道&#xff1b;其次&#xff0c;虚拟人与品牌的商业…

不同Excel多列对比记录新增、修改、删除和无变化的行,并生成对比报告

执行【Exce数据对比.exe】&#xff0c;打开界面如图选择要对比的Excel文件和被对比的Excel文件&#xff0c;输入要对比Sheet页的需要&#xff08;注意&#xff0c;Sheet需要从0开始&#xff09;输入主键列和被对比的列。主键列和被对比列均为二维列表&#xff0c;列的索引从0开…

七、HashSet底层详解

文章目录特点结论源码解读构造器添加元素小结说明练习(重要*掌握)思考特点 无序、无索引 不可重复(地址)&#xff0c;可存一个null 不可用索引取出 存放和取出顺序不一定一样 但每次取出的顺序是一样的 遍历只能迭代器和增强for 底层其实是HashMap 结论 源码解读 构造…

Spring AOP源码:配置文件解析过程

前言 本篇文章主要讲解AOP配置中的几个通知类的解析过程&#xff0c;为后续对目标类进行代理做准备&#xff1b;在前面的Spring IOC篇我们讲解了自定义配置的解析&#xff0c;AOP配置的解析过程也是其自定义注解的过程&#xff0c;如果不熟悉自定义解析过程可以看之前的文章Sp…

CVPR2017|Deep Feature Flow for Video Recognition论文复现(pytorch版)

&#x1f3c6;引言&#xff1a;深度卷积神经网络在图像识别任务中取得了巨大的成功。然而&#xff0c;将最先进的图像识别网络转移到视频上并非易事&#xff0c;因为每帧评估速度太慢且负担不起。我们提出了一种快速准确的视频识别框架——深度特征流DFF。它只在稀疏关键帧上运…

数据通信基础 - 调制技术

文章目录1 概述2 调制技术2.1 分类2.2 N 相调制3 网工软考真题1 概述 #mermaid-svg-ZTF6pPysJlmUes01 {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-ZTF6pPysJlmUes01 .error-icon{fill:#552222;}#mermaid-svg-ZTF…

谷歌用量子处理器发现:光子能在混沌中保持稳健的束缚态

一圈超导量子比特可以容纳微波光子的“束缚态”&#xff0c;其中光子往往聚集在相邻的量子比特位点上。图片来源&#xff1a;Google Quantum AI 使用量子处理器&#xff0c;研究人员可以使微波光子具有异常的“粘性”。在诱使它们聚集成束缚态后&#xff0c;他们发现这些光子簇…

谷歌 Chrome 浏览器弹窗境外广告的解决方法

谷歌的 Chrome 浏览器是我非常喜欢的一款的浏览器&#xff0c;用了它之后就不想再用其它浏览器。可是不知道从什么时候开始&#xff0c;Chrome 浏览器居然时不时地在右下角弹出广告&#xff0c;仔细一看&#xff0c;还是境外的 VPN 广告&#xff0c;如下图。有弹出过几次了&…

如何通过创建 SSH key 来进行Git 代码管理

1.检查你的电脑是否已经有SSH Key&#xff1f; 运行如下命令查看&#xff1a; $ cd ~/.ssh $ ls如果存在id_rsa.pub或 id_dsa.pub 文件&#xff0c;说明你的电脑已经有 SSH Key &#xff0c;可以直接拿来用&#xff0c;如果没有的话需要创建。 2.创建SSH Key 配置全局的nam…

zookeeper入门篇

文章目录前言介绍安装与启动配置说明节点节点类型PERSISTENT&#xff08;持久化节点&#xff09;PERSISTENT_SEQUENTIAL&#xff08;持久化顺序节点&#xff09;EPHEMERAL&#xff08;临时节点&#xff09;EPHEMERAL_SEQUENTIAL&#xff08;临时顺序节点&#xff09;Container&…

用Java实现简单的图书管理系统(Java系列7)

目录 前言&#xff1a; 1.基础框架的搭建 1.1图书 1.1.1书 1.1.2书架 1.2用户 1.2.1抽象类 1.2.2普通用户 1.2.3管理员 1.3操作 1.3.1新增图书 1.3.2借阅图书 1.3.3删除图书 1.3.4退出图书 1.3.5查找图书 1.3.6归还图书 1.3.7显示图书 2.具体内容的实现 2.1Ma…

<flutter>跨平台开发新手入坑指南 dart dio pubspec.yaml json_annotation 打包 小坑指南

1.资源文件和依赖三方包&#xff08;pubspec.yaml&#xff09;&#xff1a; pubspec.yaml文件可以说是和安卓的gradle文件差不多&#xff0c;它用来描述版本号、sdk、依赖等的。 在资源导入方面同安卓不一样的是&#xff0c;flutter需要在pubspec.yaml中声名&#xff0c;不然…

【PCB专题】Allegro元件库路径设置方法

正常Layout拉线前,需要将原理图导出的网表导入到Allegro里,Allegro就会自动将元件导入。如果库路径没有设置或都软件找不到器件,将会非常的卡顿,并且报Completed with warnings/errors。如下图所示: 在弹出的错误报告View of file:netrev.lst中会提示很多器件找不到封装。…

js知识点

js有预解析阶段&#xff0c;变量声明提升只提升定义&#xff0c;不提升值 console.log(a);//undefined var a10; 基本数据类型 Number、String、Boolean、Undefined和Null 复杂数据类型 Object、Array、Function、RegExp、Date、Map、Set等 使用typeof运算符可以检测值或…

刷爆力扣之验证回文串 II

刷爆力扣之验证回文串 II HELLO&#xff0c;各位看官大大好&#xff0c;我是阿呆 &#x1f648;&#x1f648;&#x1f648; 今天阿呆继续记录下力扣刷题过程&#xff0c;收录在专栏算法中 &#x1f61c;&#x1f61c;&#x1f61c; 该专栏按照不同类别标签进行刷题&#xff…

第六章 作业【数据库原理】

第六章 作业【数据库原理】前言推荐第六章 作业第6章第1题&#xff08;简答题&#xff09;第6章第2题&#xff08;简答题&#xff09;第6章第3题&#xff08;设计题&#xff09;第6章第4题&#xff08;设计题&#xff09;最后前言 2022-12-27 16:05:55 以下内容源自数据库原理…

最大连续子序列的和问题(算法)

问题描述 给定一个有n&#xff08;n≥1&#xff09;个整数的序列&#xff0c;要求求出其中最大连续子序列的和。 蛮力法 暴力枚举 /*** 时间复杂度&#xff1a;O(n^3)* param arr 序列[数组]* param n 数组大小* return int */ int maxSubSum1(int arr[], int n) {int thi…