美文网首页
组合微服务的方式(一)

组合微服务的方式(一)

作者: 杨小华etz | 来源:发表于2019-03-26 18:13 被阅读0次

    1.服务代理模式

    2.服务聚合模式

    3.服务串联模式

    4.服务分支模式

    5.服务异步消息模式

    6.服务共享数据模式

    1.服务代理模式

        最简单的服务组合模式,根据业务的需求选择调用后端的某个服务。在返回给使用端之前,代理可以对后端服务的输出进行加工,也可以直接把后端服务的返回结果返回给使用端。

    组合微服务的方式(一)

    系统迁移时使用

    2.服务聚合模式

            最常用的服务组合模式,它根据业务流程处理的需要,以一定的顺序调用依赖的多个微服务,对依赖的微服务返回的数据进行组合,加工和转换,最后以一定的形式返回给使用方。

    组合微服务的方式(一)

    举例:

    电商系统的前端就是后端各个微服务的一个最大的聚合服务,前端应用通过调用商品和商品目录显示商品列表,提供给用户选择商品的功能;用户选择商品后增加商品到购物车;用户从购物车结算时,调用交易系统完成交易和交付。

    组合微服务的方式(一)

            聚合服务也可以是一个纯后台服务,通过聚合对使用方输出组合服务。

    举例:

            在电商系统中,在用户选择结算后,系统调用交易,交易系统会调用库存系统锁库存;然后创建交易订单,引导用户去支付,支付成功后减库存;最后通过发票服务开具电子发票。

    组合微服务的方式(一)

    3.服务串联模式

          服务串联模式类似一个工作流,最前面的串联服务负责接收请求和响应使用方,再与服务1交互,随后服务1与服务2交互;最后,从服务2产生的结果经过服务1和串联服务逐个处理后返回给使用方。

    组合微服务的方式(一)

          服务串联模式之间的调用通常使用同步的RESTful风格的远程调用实现,这种模式采用的是同步调用方式。即,在串联服务没有完成并返回之前,所有服务都会阻塞和等待。一个请求会占用一个线程来处理,因此这种模式下,不能服务的层级太多。如果可以使用服务聚合模式代替,优先使用服务聚合模式。

          服务串联模式有一个优点,在串联链路上再增加一个节点时,只要不在串联服务的正后面增加一个那么串联服务是无感知的。

    组合微服务的方式(一)

    相关文章

      网友评论

          本文标题:组合微服务的方式(一)

          本文链接:https://www.haomeiwen.com/subject/slpnvqtx.html