IBM Cloud Docs
什么是 App Configuration?

copyright: 年份:2025 最后更新:2025-03-10

关键词:应用程序配置、应用程序配置、关于应用程序配置

子集:应用程序配置


什么是 App Configuration?

IBM Cloud App Configuration 是一个集中式功能管理和配置服务,可用于网络和移动应用程序、微服务和分布式环境。

使用 App Configuration SDK为您的应用程序添加功能,并使用 App Configuration 仪表板或 App Configuration 管理员API来定义功能标志,这些标志被组织成集合并针对细分市场。 更改云中的功能标志状态可激活或停用应用程序或环境中的功能,而通常无需重新启动。 您还可以集中管理分布式应用程序的属性。 它可以帮助云治理中小企业在一个地方获得 IBM Cloud 资源的最新配置数据,以便为治理和合规计划提供全面的信息。 这可以通过启用或禁用配置聚合来控制。

  • 应用程序所有者- 分段推出功能,独立于代码部署。
  • 开发人员 ——通过在主分支中以功能标记的形式包含未经测试或未完成的功能,降低源代码分支的复杂性和合并的麻烦。
  • 测试人员- 在生产中测试新功能,确保平稳过渡。 使用标记来激活未经测试的功能,仅供测试人员和质量保证人员使用,直到到了发布时间。

功能部件

App Configuration的主要功能:

  • 集中配置 ——从中央位置配置多个分布式资源。 使用“集合”,可以按应用或资源来组织标志。
  • “黑暗启动”- 包括尚未准备好部署的功能,在准备就绪时激活它们。
  • 分段功能推出 ——在不同时间针对不同细分市场激活功能,或根据细分市场调整功能。
  • 功能回滚 ——通过在 App Configuration 云仪表板中切换功能标志,立即回滚有问题的功能。
  • 分阶段推出- 配置功能标志,为子集实体启用,以实现功能的逐步交付。
  • 配置聚合器--配置为在 "IBM Cloud账户中收集多个分布式资源的元数据,以便用于治理和合规性计划。

App Configuration 如何工作?

了解App Configuration在正常运行或出现问题时如何工作。

正常运行

在正常运行期间,“App ConfigurationSDK(图 1 中的 #2)会处理从”IBM Cloud App Configuration实例(图 1 中的 #1)向您的应用程序自动发送适当的标志状态或属性值。 在初始化过程中,SDK 会连接到“App ConfigurationAPI 并获取指定的集合、段规则和目标规则(图 1 中的 #3),然后根据编入应用程序的属性值评估这些规则,以选择正确的”分部 和目标值。 规则运行所依据的属性存储在本地,而不是云上的IBM Cloud App Configuration服务中。 因此,如果需要根据保密属性(如社会安全号码)进行评估,这些值永远不会离开本地应用环境。

初始化后,应用程序会通过两种方式接收更新值,具体取决于您使用的是服务器端还是客户端 SDK。 服务器端SDK通过Web套接字连接到 App Configuration 服务,修改后的值将实时传递到您的应用程序。 客户端SDK会在生命周期发生变化时(例如被打开或置于前台)从 App Configuration 服务中提取数值。

在正常运行期间,各种指标会被发送回 AC 云服务(图 1 中的 #6),以便服务能够正常运行,您也可以监控其运行情况。

概述
App Configuration工作原理

当出现问题时采取行动

与任何应用程序或云服务一样,有时也会出错,但即使您的应用程序无法使用“IBM Cloud App Configuration服务,”IBM Cloud App Configuration也会继续提供配置。

失去连接

如果应用程序与IBM Cloud App Configuration服务之间的连接中断,IBM Cloud App Configuration将自动返回本地缓存文件(图 1 中的 #4)。SDK 会自动退回到本地缓存文件,该文件包含最后已知的良好配置(图 1 中的 #4)。 在缓存模式下,云中发生的配置更改不会到达应用程序,但连接中断时存在的配置会继续正常运行。

作为这个案例的延伸,假设您需要在隔离的环境中操作您的应用程序。 在这种情况下,可以使用引导配置文件(图 1 中的 #5)。 有关更多信息,请参阅 启用脱机模式

服务关闭

IBM Cloud App Configuration 服务出现故障的可能性很低。App Configuration 部署在多区域,这意味着它在一个区域内运行,跨越三个地理上独立的区域。 如果任何区域出现故障,IBM Cloud App Configuration服务将继续正常运行。 有关详细信息,请参阅 资源部署的区域和数据中心位置

如果您需要跨区域的极端灾难恢复保护,您可以在其他区域设置“IBM Cloud App Configuration实例,并通过使用”IBM Cloud App Configuration应用程序接口.NET 实例来保持它们的同步。

App Configuration 概念

了解App Configuration服务实例、目标定义和功能标志等概念。

![App Configuration概览 "](images/ac-overview.png ""App Configuration概览图表 "")

服务实例

App Configuration服务实例是“IBM Cloud上”App Configuration应用程序的副本。您可以从IBM Cloud目录中的磁贴创建一个实例。 现在,您可以访问App Configuration仪表板和所选定价方案的所有功能。

环境

App Configuration环境是一组配置值,应用于基础架构中运行和管理的环境。例如,您的软件开发流程可能涉及三个环境:开发、暂存和生产。 在App Configuration 的单个实例中,可以包含所有三种配置的配置值。 App Configuration内的所有配置密钥(名称)都会在所有环境中自动复制,但每个密钥的值针对每个环境。

集合 (Collection)

使用集合以任何对您有意义的方式对特征标志和属性进行分组。 通常情况下,一个集合用于表示特定应用程序的所有配置值。 功能标志和属性可以属于多个集合,以便在应用程序或基础架构集之间共享通用配置值。

功能标志

功能标志是您希望快速或频繁打开或关闭的配置参数。 它们可用于设置应用程序的状态。 在您的应用程序中,“App ConfigurationSDK 的”isEnabled() 方法用于激活条件代码块,根据功能标志的状态打开或关闭功能。 使用功能标志将功能暗启动到生产中,然后只为选定的用户开启这些功能,或有选择地、独立于部署向用户推出这些功能。 每个特征标志必须属于一个集合。

属性

属性是不经常变化但仍需要集中管理的配置参数。 使用App Configuration 将所有应用程序和环境组件的属性整合到一个中央云仪表板中,从而避免了管理多个参数文件的麻烦。 在您的应用程序中,App Configuration的 "getCurrentValue() 方法SDK 用于访问属性的当前值。 每个属性必须属于一个集合。

分段

使用App Configuration,单个功能标志或属性可以有多个值,每个值都适用于一组特定的实体(用户、设备、基础架构组件)。 每组称为一个分段。 一个分段的成员共享一套分段规则所定义的一个或多个共同属性。 分段是可选的。

属性

属性是用于定义段落的参数。 属性用于在App Configuration仪表板上创建分段规则,但属性名称和每个属性的值都在代码中定义。 运行时,App Configuration会将段规则提取到应用程序实例中,并确定其是否属于段。SDK 会将网段规则获取到应用程序实例中,并确定其是否属于网段的一部分。

目标定位的定义

特征标志和属性是根据一组规则(称为目标定义)定位到网段的。 通过目标定位,您可以覆盖您定义的任何段的标志或属性的默认值。

App ConfigurationSDK

App ConfigurationSDK会自动将适当的标志状态或属性值传送到您的应用程序中。 它连接到App ConfigurationAPI 提供的端点。API 提供的端点,获取集合并评估分段和目标规则。 它还提供了启用或禁用配置聚合器和查询资源元数据的选项。 服务器端 SDK 通过网络套接字连接到App Configuration服务,以获得实时更新。 客户端SDK会在生命周期发生变化时(例如被打开或置于前台)从 App Configuration 服务中提取数值。SDK 有各种客户端和服务端语言,而且还在不断增加更多语言。