我们将 Label 和 Tag 定义成微服务中各种治理能力的基石

Label

Label 定义

Label 是描述某个实例的一些属性,在很多平台中也会被称为annotationtag

下面是某个微服务的实例 Label 例子:

Instance:
	version:1.0.0
	zone:sh-1
	region:sh
	node:10.1.1.2
	group:group-001
	namespace:test
	protocol:http
	framework:femas

Label 使用

Label 的使用 kubernetes 相似,可以将 Label关联到各种资源,目前为了简单,暂时将 Label 和实例进行关联,来用于各种治理能力。

为了更广泛的使用场景,这里并不采用 kubernetes 的使用方式,因为 Femas 从设计之初,就希望能够横跨虚机和容器平台。

Femas 的 Label 是在服务注册时,作为实例的 metadata 上报给注册中心

所有的注册动作,Femas 框架本身都会实现,用户只需要通过 ENV 或者 -D,或者Yaml等方式,设置合理的 Label 即可。

Label 的主要场景还是用于挑选可用实例上,比如: