但在实际的项目中, 产品中的微服务又无法避免的会对某些库 (Library) 产生依赖; 共享某些库 (Library)。
所以, 架构师必需要知道要如何管理微服务间的共享。...本文:
微服务会形成共享的原因, 主要是来自于:
微服务共同继承于某个抽象的接口。
微服务同时依赖于某个共享的库 (Library)。
架构师可采用以下的四种方案, 管理微服务间的共享:
A....Compile Binding:
将多个微服务会共享的代码, 置入在一共享的项目中。在编译的时候, 共享的代码便与特定的微服务的代码编译在一起。...此种方案, 从开发的角度, 其好处是显而易见的: 不需重启运维中的微服务, 而是在编译, 单元测试的时候, 特定的微服务便可立即知道, 在共享项目中的任何的修改或变更, 对微服务自身的影响为何?...更糟糕的是, 当灾难发生时, 各个微服务也没法对所共享的项目, 有任何的选择权或控制权; 各个微服务无法选择自身所要的共享项目的版本。
B.