输入“/”快速插入内容

day11-微服务面试篇

47646
101533
50
124
大家学习中如果碰到困难,可以加入黑马智学伴侣寻求帮助,有学习交流群,老师、同学在线答疑。还有独享的企业级项目,避免与人撞车。
对应B站视频:
微服务在面试时被问到的内容相对较少,常见的面试题如下:
SpringCloud有哪些常用组件?分别是什么作用?
服务注册发现的基本流程是怎样的?
Eureka和Nacos有哪些区别?
Nacos的分级存储模型是什么意思?
Ribbon和SpringCloudLoadBalancer有什么差异
什么是服务雪崩,常见的解决方案有哪些?
Hystix和Sentinel有什么区别和联系?
限流的常见算法有哪些?
什么是CAP理论和BASE思想?
项目中碰到过分布式事务问题吗?怎么解决的?
AT模式如何解决脏读和脏写问题的?
TCC模式与AT模式对比,有哪些优缺点
可以发现,这些问题都是围绕着SpringCloud的相关组件的,其中有些问题我们在课堂上已经介绍过,这里不再赘述。我们重点讲解一些之前没有讲过的,与底层实现有关的部分。
讲解的思路还是基于SpringCloud的组件分类来讲的,主要包括:
分布式事务
注册中心
远程调用
服务保护
等几个方面
1.分布式事务
分布式事务,就是指不是在单个服务或单个数据库架构下,产生的事务,例如:
数据源分布式事务
跨服务的分布式事务
综合情况
我们之前解决分布式事务问题是直接使用Seata框架的AT模式,但是解决分布式事务问题的方案远不止这一种。
1.1.CAP定理
解决分布式事务问题,需要一些分布式系统的基础知识作为理论指导,首先就是CAP定理。
1998年,加州大学的计算机科学家 Eric Brewer 提出,分布式系统有三个指标:
Consistency(一致性)
Availability(可用性)
Partition tolerance (分区容错性)
它们的第一个字母分别是 CAP。Eric Brewer认为任何分布式系统架构方案都不可能同时满足这3个目标,这个结论就叫做 CAP 定理。
为什么呢?
1.1.1.一致性
Consistency(一致性):用户访问分布式系统中的任意节点,得到的数据必须一致。