`
Taylorshirley
  • 浏览: 10243 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

微服务理论与实践----微服务架构的六种模式

 
阅读更多

1.微服务架构模式方案

用Scale Cube方法设计应用架构,将应用服务按功能拆分成一组相互协作的服务。每个服务负责一组特定、相关的功能。每个服务可以有自己独立的数据库,从而保证与其他服务解耦。

 

 

1.1 聚合器微服务设计模式

     聚合器调用多个服务实现应用程序所需的功能。它可以是一个简单的Web页面,将检索到的数据进行处理展示。它也可以是一个更高层次的组合微服务,对检索到的数据增加业务逻辑后进一步发布成一个新的微服务,这符合DRY原则。另外,每个服务都有自己的缓存和数据库。如果聚合器是一个组合服务,那么它也有自己的缓存和数据库。聚合器可以沿X轴和Z轴独立扩展。

    这是聚合器模式的一个变种,在这种情况下,客户端并不聚合数据,但会根据业务需求的差别调用不同的微服务。代理可以仅仅委派请求,也可以进行数据转换工作。

 

1.3 链式微服务设计模式

 这种模式在接收到请求后会产生一个经过合并的响应,在这种情况下,服务A接收到请求后会与服务B进行通信,类似地,服务B会同服务C进行通信。所有服务都使用同步消息传递。在整个链式调用完成之前,客户端会一直阻塞。因此,服务调用链不宜过长,以免客户端长时间等待。

 

 

 

1.4 分支微服务设计模式

这种模式是聚合器模式的扩展,允许同时调用两个微服务链

1.5  数据共享微服务设计模式

 

自治是微服务的设计原则之一,就是说微服务是全栈式服务。但在重构现有的“单体应用(monolithic application)”时,SQL数据库反规范化可能会导致数据重复和不一致。因此,在单体应用到微服务架构的过渡阶段,可以使用这种设计模式

 

1.6 异步消息传递微服务设计模式

 

虽然REST设计模式非常流行,但它是同步的,会造成阻塞。因此部分基于微服务的架构可能会选择使用消息队列代替REST请求/响应

分享到:
评论

相关推荐

    微服务架构实践-唯品会1

    微服务架构是一种将大型应用程序分解为一组小型、独立的服务的软件开发方法,每个服务都运行在其自己的进程中,具有自己的数据库,并通过轻量级机制(通常是HTTP RESTful API)相互通信。这种架构允许团队独立地开发...

    微服务架构设计与实践-内训方案.pdf

    - **微服务架构理论与实践**: - 讨论了如何从单体应用过渡到微服务架构,包括技术选型、服务边界划分等。 - 实践案例展示了实际项目中的具体应用。 - **多维度的可用性**: - 涉及到网络、存储、计算等多个层面...

    微服务理论和实践

    本书“微服务理论与实践”通过展示如何在IBM Bluemix平台上创建应用程序,系统性地介绍了微服务的理论和实践知识。对于架构师和应用开发者来说,这是一本理解微服务并将其应用于实践的重要读物。通过本书,读者不仅...

    微服务架构实践116页.pdf

    文档内容提到了“微服务架构实践”,并且强调了在电商大型活动中实践微服务架构的案例。这意味着文档中可能包含了微服务架构实施的详细案例分析,包括架构设计、服务的拆分、开发模式、部署策略以及在高流量、高并发...

    第六期微服务架构-SpringCloudAlibaba代码和文档.zip

    在实际开发过程中,"第六期微服务架构-SpringCloudAlibaba代码和文档.zip"提供的代码示例和文档将帮助你快速理解和实践这些技术。通过学习和研究这些案例,你可以掌握如何配置和使用Nacos进行服务注册与发现,如何...

    微服务架构课程_l理论与实操

    在"微服务架构课程-理论与实操"的压缩包中,包含了两部分重要的学习资源:理论篇和实操篇,旨在帮助我们深入理解和掌握微服务架构的关键概念和技术。 **理论篇** "0a 微服务架构课程-理论.pdf" 可能涵盖了以下知识...

    2019Java微服务架构 2.0-全网首发-网盘地址

    004-微服务的优点.mp4章节1-什么是微服务\千锋java教程:005-微服务的缺点.mp4章节1-什么是微服务\千锋java教程:006-CAP 定理与 BASE 理论mp4.mp4章节1-什么是微服务\千锋java教程:007-如何应对高并发.mp4章节10-...

    SpringCloud微服务架构笔记-共四部分四个PDF文件

    本套笔记全面覆盖了SpringCloud微服务架构的关键知识点,从理论到实践,帮助读者深入了解并掌握微服务设计原则和SpringCloud的实现方式,对于想要在微服务领域深化学习的Java开发者来说是一份宝贵的资料。

    课程《Kubernetes微服务实践》源码-k8s-msa-in-action.zip

    《Kubernetes微服务实践》是一门深度探讨如何在Kubernetes平台上实施微服务架构的课程。源码包"k8s-msa-in-action.zip"包含了该课程的所有实例代码和相关资源,帮助学习者通过实践理解Kubernetes在微服务场景中的...

    微服务架构与实践 ,王磊著

    《微服务架构与实践》这本书不仅理论详尽,而且实战性强,是学习和掌握微服务架构的宝贵资源。通过阅读,读者可以提升自己在分布式系统设计和实现方面的能力,更好地应对现代企业IT环境中的复杂问题。

    微服务架构专题-SpringBoot.pptx

    Dubbo提供了核心API以及最佳实践,可以与SpringBoot整合实现微服务架构。 3. **分布式一致性问题**: - **订单与库存场景**:在分布式系统中,处理订单与库存的一致性是常见的挑战,包括同步调用超时、异步调用...

    云计算与数据-基于 DevOps 的微服务生态系统与工程实践-王磊.zip

    总的来说,《云计算与数据-基于 DevOps 的微服务生态系统与工程实践》是一本全面介绍现代IT基础设施建设的指南,它涵盖了从理论到实践的多个层面,对于想要深入理解和掌握云计算、DevOps 和微服务架构的专业人士来说...

    基于Spring-Cloud的微服务架构.zip

    本资料《基于Spring-Cloud的微服务架构》将通过实际案例,详细讲解如何搭建Spring-Cloud微服务架构,包括服务的创建、注册、调用、监控等方面,帮助开发者从理论到实践,全面掌握Spring-Cloud在微服务中的应用。...

    微服务架构

    微服务架构的理论基础与核心原则包括以下几个方面: 1. 服务的独立性:每个微服务都负责一部分特定功能,并且可以独立于其他服务部署、升级、扩展或修复。 2. 去中心化治理:各个微服务拥有自己的业务逻辑、数据...

    yudao-cloud微服务架构 v2.0.0.zip

    总的来说,"yudao-cloud微服务架构 v2.0.0.zip" 是一个全面了解和实践微服务架构的宝贵资源,涵盖了从理论到实践的多个层面。通过深入学习和分析,无论是初学者还是经验丰富的开发者,都能从中获益良多。

    DotNET 微服务、容器 - 体系结构电子书

    3. **面向服务的体系结构**:微服务架构提倡将大型应用分解为一组小型、独立的服务,每个服务都有自己的业务功能和数据库,以实现松耦合和高可扩展性。 4. **微服务的数据主权**:每个微服务对其内部数据拥有完全...

    电商微服务架构搭建全过程教程

    通过提供的链接下载本教程配套的源码资源,建议读者按照教程顺序逐步学习并实践,理论结合实际,更好地理解和掌握电商微服务架构的设计与实现方法。 总之,通过以上介绍和实践指南,相信大家可以顺利地完成电商...

Global site tag (gtag.js) - Google Analytics