微服务架构--构成模式【翻译】

java技术文章

2018-12-27

25

0

软件构成意味着构成你软件产品的方法。一般情况下,它用高级的软件架构图来表示,这里你的软件不同模块将对特定的业务目标进行交互。在这个章节,我们将学习关于在组织架构中广泛使用的软件架构模式。在微服务中,我们拆分每一个功能到一个过程中。这些每一个服务具有独立和完全可叠加的特性。

在构建你的微服务功能,分解扮演一个重要的角色。它给你的应用提供了一个敏捷,灵活和可扩展的特性。

聚合模式

聚合模式是一个可以实现开发一个微服务的简单web模式。在这个构成模式中,一个简单web模块将充当一个加载平衡器,意味着它将作为每一个需求调用不同的微服务。下面是用聚合模式构建的一个简单微服务web app代码描述图。看下面的图片,聚合负责一个接着一个调用不同的服务。如果我们需要运用任何商业逻辑在服务A,B,C的结果之上,我们可以在聚合器本身实现业务逻辑。

我们可以假设,它被需要的时候,一个聚合器又能开始作为另一个服务对外界提供服务。在开发聚合模式web服务,我们需要保存设计想法,我们的每一个A,B,C服务应该有他们自己的缓冲层并且应该完全可以叠加。
 

代理模式

代理模式是一个变种的集成模式。在这个模式中,我们将是使用代理模块代替内聚模块。代理服务可以叫做单独不同的服务。
在代理模式中,我们可以通过提供转接的代理层构建一层额外安全机制,这层的行为类似接口。
 

链路模式

顾名思义,这种类型的结构模式将允许链路结构。在这里,客户端和服务层之间我们将不使用任何模块。相反的,我们将允许客户端直接和服务端直接交互,并且所有的服务将像这样链接起来,一个输出服务将直接输入到下一个服务。下面的图片显示一个典型的链路模式的微服务。
这个结构的主要缺点是,整个过程没有处理完成客户端将被阻塞。因此保持链路的长度尽可能短是被推荐的。

微服务分支模式

分支微服务是内聚模式和链路模式版本的继承。在这个设计模式中,客户端能直接和服务端交互。因此,一个服务同时能和多个服务进行交互。下面是分支微服务的概略图。
分支微服务模式允许开发者动态配置调用服务。所有的服务将在并发情况下发生,服务A可以同时调用服务B和服务C。
 

共享资源模式

共享资源模式实际上是一个汇聚前面提到的所有模式的集合模式。在这个模式中,客户端或者加载平衡器将直接在必要时和每一个服务进行交互。这个是大多数企业广泛遵循最有效的模式。下面是共享资源模式的概略图。

发表评论

全部评论:0条

鸿福951

努力打造一个好用的webui

热评文章

推荐文章