发现服务和服务顺序
Discovery service and order of services
为了简化这个问题,假设我有两个服务:
- 数据存储
- 业务层,在启动时连接到数据存储。
显然,业务层必须等到数据存储准备就绪后才能连接和使用它。
'dependency' 关系在 'Discovery service' 世界(zookeeper、etcd...)中是如何解决的?据我所知,注册中心只保留服务信息,服务之间没有依赖关系。
至少有两种方法可以解决这个问题:
- 服务发现协议将注册服务的 IOPE(Input/Output/Preconditions 或 Postconditions/Effects)。此依赖项可以是 Preconditions/Postconditions 集的一部分。
- 这两项服务可以成为设计工作流程的一部分。在发现和组合服务(手动或自动)时,可以通过将第一个服务(业务层)的输出映射到第二个服务(数据存储)的输入来实现依赖关系。
为了简化这个问题,假设我有两个服务:
- 数据存储
- 业务层,在启动时连接到数据存储。
显然,业务层必须等到数据存储准备就绪后才能连接和使用它。
'dependency' 关系在 'Discovery service' 世界(zookeeper、etcd...)中是如何解决的?据我所知,注册中心只保留服务信息,服务之间没有依赖关系。
至少有两种方法可以解决这个问题:
- 服务发现协议将注册服务的 IOPE(Input/Output/Preconditions 或 Postconditions/Effects)。此依赖项可以是 Preconditions/Postconditions 集的一部分。
- 这两项服务可以成为设计工作流程的一部分。在发现和组合服务(手动或自动)时,可以通过将第一个服务(业务层)的输出映射到第二个服务(数据存储)的输入来实现依赖关系。