微服务常见问题及解决方案

1、分解模式:如何把应用分成若干个小服务?

1)按业务功能分解,将应用分解成能产生业务价值的最小单元。

2)对于跨多个业务的类(如订单会被订单管理、订单交付多个服务用到)用领域驱动设计(DDD),使用子域和边界上下文的概念来着手解决。

2、集成模式

1)API网关模式

2)聚合器模式

3、数据库模式

1)按服务分配数据库,为每个微服务配一个独立的数据库;

2)按服务共享数据库,一个数据库不要超过3个微服务,否则会影响扩容、自治和独立性。

3)命令查询职责隔离

4、观测模式

1)日志聚合:将多台机器上多个服务实例的请求汇聚到一起搜索和分析

2)性能指标:服务出现问题及时发出告警

3)分布式追踪:追踪横跨多个微服务的问题点,如Spring Cloud Slueth + Zipkin Server,是一种常见的实现方式。

4)健康检查:确保负载均衡不会将请求发给不健康的结点

5、横切关注点

1)外部配置:外部化所有配置,确保应用启动时能加载。实现不重启服务刷新

2)服务发现模式

3)断路器模式

4)蓝绿部署模式

6、微服务架构模式:Sidecar 模式、链式微服务(Chained Microservice)、分支微服务(Branch Microservice)、事件溯源模式(Event Sourcing Pattern)、和持续交付方式等。

原文地址:https://www.cnblogs.com/doit8791/p/9863192.html

时间: 2024-10-13 08:22:23

微服务常见问题及解决方案的相关文章

微服务-分布式事务解决方案

微服务的搭建 微服务中我们把业务的能力进行了抽象,实际的业务中我们需要用到不同的服务的能力,并且我们处理的业务需要事务的一致性,避免出现数据的紊乱,那么我们就需要对分布式的微服务进行一致性事务的处理.下面是我自己总结的几种方案. 分布式事务解决的方案 一.(XA)两阶段方案 1.先提交每一个(这个是加锁) 2.确认资源,确认每一个RM是否都成功了,判断是否要提交还是要回滚 二.TCC(try-confirm-cancle)两阶段补偿性方案 1.先提交状态为中间状态(数据表更改为更新中,而不是加锁

微服务常见问题汇总

1.SOA和微服务架构之间的主要区别是什么?SOA(Service Oriented Architecture)面向服务的架构:他是一种设计方法,其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能.一个服务 通常以独立的形式存在与操作系统进程中.各个服务之间通过网络调用.微服务架构:其实和SOA架构类似,微服务是在SOA上做的升华,微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”,原有的单个业务系统会拆分为多个可以独立开发.设计.运行的小应用.这些小应用之间通过服务完成交互和

Spring Cloud Alibaba 新一代微服务解决方案

本篇是「跟我学 Spring Cloud Alibaba」系列的第一篇, 每期文章会在公众号「架构进化论」进行首发更新,欢迎关注. 1.Spring Cloud Alibaba 是什么 Spring Cloud Alibaba 是阿里巴巴提供的微服务开发一站式解决方案,是阿里巴巴开源中间件与 Spring Cloud 体系的融合. 马老师左手双十一,右手阿里开源组件,不仅占据了程序员的购物车,还要攻占大家的开发工具. 先说说 Spring Cloud 提起微服务,不得不提 Spring Clou

微服务SpringCloud+Docker入门到高级实战(教程详情)

第一章 课程介绍和学习路线 1.微服务架构SpringCloud课程介绍 简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧 2.技术选型和学后水平 简介:课程所需基础和技术选型讲解,学完课程可以到达怎样的程度, 1.IDEA JDK8 Maven SpringBoot基础 Linux 2.理解掌握并开发SpringCloud里面主流架构和组件的基础使用,还有部分源码原理的理解 3.掌握学习的技巧和解决问题的思路 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构 简介:讲

微服务SpringCloud+Docker入门到高级实战(目录)

第一章 课程介绍和学习路线 1.微服务架构SpringCloud课程介绍 简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧2.技术选型和学后水平 简介:课程所需基础和技术选型讲解,学完课程可以到达怎样的程度, 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图)2.微服务核心基础讲解 简介:讲解微服务核心知识 :网关.服务发现注册.配置中心.链路追踪.负载均衡器.熔断3.常见的微服务框架 简介:讲解常用的微服务框架4

微服务SpringCloud+Docker入门到高级实战

第一章 课程介绍和学习路线 1.微服务架构SpringCloud课程介绍简介:课程介绍和课程大纲讲解,讲课风格和重点内容理解技巧2.技术选型和学后水平简介:课程所需基础和技术选型讲解,学完课程可以到达怎样的程度, 第二章 架构演进和分布式系统基础知识 1.传统架构演进到分布式架构简介:讲解单机应用和分布式应用架构演进基础知识 (画图)2.微服务核心基础讲解简介:讲解微服务核心知识 :网关.服务发现注册.配置中心.链路追踪.负载均衡器.熔断3.常见的微服务框架简介:讲解常用的微服务框架4.微服务下

金庸和古龙,Netweaver和微服务,以及SAP Hybris Revenue Cloud

这周Jerry在长沙客户现场待了几天,感谢易总和彩亮的款待.终于有机会和关注这个公众号的一些CRM顾问们进行线下互动,感觉很不错.得知公众号里某些文章帮助顾问们解决了一些工作中的实际问题,我很高兴.感谢大家的支持,只要时间允许,这个公众号我会一直写下去. 和CRM顾问们中午吃饭时聊到了SAP一些新的云产品采用了微服务架构开发,因此我写了这篇文章. 如果要找金庸小说里帮助Jerry提高编程水平最有用的一句话,无疑是:重剑无锋,大巧不工. 杨过被郭芙斩断一臂后,以前掌握的编程语言,哦不,以前掌握的武

微服务框架Dubbo与Springcloud的区别

微服务框架Dubbo与Springcloud的区别 微服务主要的优势如下: 1.降低复杂度 将原来偶合在一起的复杂业务拆分为单个服务,规避了原本复杂度无止境的积累.每一个微服务专注于单一功能,并通过定义良好的接口清晰表述服务边界. 每个服务开发者只专注服务本身,通过使用缓存.DAL等各种技术手段来提升系统的性能,而对于消费方来说完全透明. 2.可独立部署 由于微服务具备独立的运行进程,所以每个微服务可以独立部署.当业务迭代时只需要发布相关服务的迭代即可,降低了测试的工作量同时也降低了服务发布的风

从无到有构建大型电商微服务架构实际开发案例教程(第三阶段)

从无到有构建大型电商微服务架构实际开发案例教程(第三阶段)课程下载地址:https://pan.baidu.com/s/1oTfj9d-o4URKFzMoVXKxBQ 提取码:8p0s 本课程将手把手带大家从无到有实现一个真实的大型电商微服务项目,该项目是基于真实的知名互联网企业项目讲解的 本课程将讲解如何从无到有搭建一个真实的大型电商微服务项目,涉及的内容较多,录制所需的时间也会比较久,因此整部课程下来售价也比较高,但考虑到课程中讲解的某阶段的知识点,有部分学员可能已经掌握了解,并不需要再次学