云服务器内容精选

  • 配置中心概述 配置中心用来管理微服务应用的配置。微服务连接配置中心,能够从配置中心获取配置信息及其变化。配置中心还是其他微服务管控功能的核心部件,比如服务治理规则的下发,也是通过配置中心实现的。 微服务引擎支持的配置中心为:config-center和kie。 当微服务引擎版本为1.x时,取值为config-center。 当微服务引擎版本为2.x时,取值为kie或config-center,推荐使用kie作为配置中心。 本章节介绍不同微服务开发框架使用配置中心的一些开发细节,包括如何配置依赖、连接配置中心有关的配置项等,并简单的介绍微服务应用中如何读取配置和响应配置变化。 微服务引擎使用kie作为配置中心。 微服务默认会读取配置中心应用配置、服务配置、自定义配置。应用配置指环境、应用和微服务相同的配置;服务配置指环境、应用、微服务名称和微服务相同的配置。微服务可以在配置文件中指定一个特定的label及label值,自定义配置指label及label值与微服务相同的配置。 简单的场景,可以使用应用级配置和服务级配置。应用级配置被该应用下的所有微服务共享,是公共配置;服务级配置只对具体微服务生效,是独享配置。 复杂的场景,可以通过使用customLabel和customLabelValue来定义配置。例如某些配置,是对所有应用共享的,那么就可以使用这个机制。在配置文件增加如下配置(以Spring Cloud为例): spring: cloud: servicecomb: config: kie: customLabel: public# 默认值是public customLabelValue: default # 默认值是空字符串 只要配置项带有public标签,并且标签值为default,这些配置项就会对该微服务生效。 把配置中心当成数据库的一个表tbl_configurations,key是主键,每个label都是属性。 客户端会根据如下3个条件查询配置: 自定义配置 select * from tbl_configurations where customLabel=customLabelValue & match=false 应用级配置 select * from tbl_configurations where app=demo_app & environment=demo_environment & match=true 服务级配置 select * from tbl_configurations where app=demo_app & environment=demo_environment & service=demo_service & match=true 其中,match为true的时候,表示有且只有条件里面指定的属性;match为false的时候,表示除了条件里面的属性,允许有其他的属性。还可以给标签app指定多个应用,或者给标签service指定多个服务,这样配置项就可以对多个服务和应用生效,非常灵活。 微服务引擎的TEXT、XML等类型,SDK会简单的当成key-value对使用;YAML和Properties类型, SDK会解析内容,应用程序将内容作为实际的应用程序配置项。比如: 类型:TEXT key: cse.examples.hello value: World 应用程序会发现1个配置项: cse.examples.hello = World。 类型:YAML key: cse.examples.hello value: | cse: key1: value1 key2: value2 应用程序会发现2个配置项: cse.key1 = value1和cse.key2 = value2。 微服务引擎使用config-center作为配置中心。 微服务默认会读取配置中心全局配置、服务配置。全局配置指环境和微服务相同的配置;服务配置指环境、应用、微服务名称和微服务相同的配置。 微服务引擎只支持key-value的配置项。如果用户需要使用yaml格式的配置文件,可以使用具体SDK提供的fileSource功能。通过在配置文件中指定fileSource的key列表,SDK会将这些key对应的value全部当成yaml解析。以Spring Cloud为例,在bootstrap.yml中增加配置项: spring: cloud: servicecomb: config: fileSource: file1.yaml,file2.yaml 并且在配置中心创建配置,“配置项”及其对应的“值”的示例如下表所示。其中,值的格式为yaml。 配置项 值 file1.yaml cse.example.key1: value1 cse.example.key2: value2 file2.yaml cse.example.key3: value3 cse.example.key4: value4 配置创建方法请参考配置管理中的“创建配置”操作。 应用程序中会发现4个配置项:cse.example.key1=value1,cse.example.key2=value2,cse.example.key3=value3和cse.example.key4=value4。 父主题: 使用配置中心
  • 配置中心概述 配置中心用来管理微服务应用的配置。微服务连接配置中心,能够从配置中心获取配置信息及其变化。配置中心还是其他微服务管控功能的核心部件,比如服务治理规则的下发,也是通过配置中心实现的。 ServiceComb引擎支持的配置中心为:config-center和kie。 当ServiceComb引擎版本为1.x时,取值为config-center。 当ServiceComb引擎版本为2.x时,取值为kie或config-center,推荐使用kie作为配置中心。 本章节介绍不同微服务开发框架使用配置中心的一些开发细节,包括如何配置依赖、连接配置中心有关的配置项等,并简单的介绍微服务应用中如何读取配置和响应配置变化。 ServiceComb引擎使用kie作为配置中心。 微服务默认会读取配置中心应用配置、服务配置、自定义配置。应用配置指环境、应用和微服务相同的配置;服务配置指环境、应用、微服务名称和微服务相同的配置。微服务可以在配置文件中指定一个特定的label及label值,自定义配置指label及label值与微服务相同的配置。 简单的场景,可以使用应用级配置和服务级配置。应用级配置被该应用下的所有微服务共享,是公共配置;服务级配置只对具体微服务生效,是独享配置。 复杂的场景,可以通过使用customLabel和customLabelValue来定义配置。例如某些配置,是对所有应用共享的,那么就可以使用这个机制。在配置文件增加如下配置(以Spring Cloud为例): spring: cloud: servicecomb: config: kie: customLabel: public# 默认值是public customLabelValue: default # 默认值是空字符串 只要配置项带有public标签,并且标签值为default,这些配置项就会对该微服务生效。 把配置中心当成数据库的一个表tbl_configurations,key是主键,每个label都是属性。 客户端会根据如下3个条件查询配置: 自定义配置 select * from tbl_configurations where customLabel=customLabelValue & match=false 应用级配置 select * from tbl_configurations where app=demo_app & environment=demo_environment & match=true 服务级配置 select * from tbl_configurations where app=demo_app & environment=demo_environment & service=demo_service & match=true 其中,match为true的时候,表示有且只有条件里面指定的属性;match为false的时候,表示除了条件里面的属性,允许有其他的属性。还可以给标签app指定多个应用,或者给标签service指定多个服务,这样配置项就可以对多个服务和应用生效,非常灵活。 ServiceComb引擎的TEXT、XML等类型,SDK会简单的当成key-value对使用;YAML和Properties类型, SDK会解析内容,应用程序将内容作为实际的应用程序配置项。比如: 类型:TEXT key: cse.examples.hello value: World 应用程序会发现1个配置项: cse.examples.hello = World。 类型:YAML key: cse.examples.hello value: | cse: key1: value1 key2: value2 应用程序会发现2个配置项: cse.key1 = value1和cse.key2 = value2。 ServiceComb引擎使用config-center作为配置中心。 微服务默认会读取配置中心全局配置、服务配置。全局配置指环境和微服务相同的配置;服务配置指环境、应用、微服务名称和微服务相同的配置。 ServiceComb引擎只支持key-value的配置项。如果用户需要使用yaml格式的配置文件,可以使用具体SDK提供的fileSource功能。通过在配置文件中指定fileSource的key列表,SDK会将这些key对应的value全部当成yaml解析。以Spring Cloud为例,在bootstrap.yml中增加配置项: spring: cloud: servicecomb: config: fileSource: file1.yaml,file2.yaml 并且在配置中心创建配置,“配置项”及其对应的“值”的示例如下表所示。其中,值的格式为yaml。 配置项 值 file1.yaml cse.example.key1: value1 cse.example.key2: value2 file2.yaml cse.example.key3: value3 cse.example.key4: value4 配置创建方法请参考配置管理中的“创建配置”操作。 应用程序中会发现4个配置项:cse.example.key1=value1,cse.example.key2=value2,cse.example.key3=value3和cse.example.key4=value4。 父主题: 使用配置中心
  • 微服务引擎 微服务引擎使用config-center作为配置中心。微服务默认会读取配置中心全局配置、服务配置。全局配置指环境和微服务相同的配置;服务配置指环境、应用、微服务名称和微服务相同的配置。 微服务引擎只支持key-value的配置项。如果用户需要使用yaml格式的配置文件,可以使用具体SDK提供的fileSource功能。通过在配置文件中指定fileSource的key列表,SDK会将这些key对应的value全部当成yaml解析。以Spring Cloud为例,在bootstrap.yml中增加配置项: