1、SpringCloud的组件有哪些?
2、负载均衡如何实现?
3、什么是服务雪崩?怎么解决?
4、项目中有没有做过限流?
Tomcat单体可以,分布式不适合
5、解释一下CAP和BASE
P:加入node03这边的网络断了,现在形成了两个分区,数据产生了不一致的问题,在集群出现分区时,整个系统也要持续对外提供服务
不过此时访问node1得到的结果,和访问node3得到的结果肯定不一样,出现数据不一致的问题,违背了C
要想满足C怎么办呢?等node3网络好了,node1把数据同步到node3 ,但是这就违背了A,谁知道node1什么时候把数据同步给node3呢?
6、分布式事务的解决方案
7、分布式服务的接口幂等性怎么去保证?
8、分布式调度框架?
9、 常见的限流算法
9.1、计数器限流算法(固窗算法)
计数器是限流中最简单的,规定为:在指定周期内累加访问次数,当访问次数达到设定的阈值时,出发限流策略,当进入下一个时间周期时会将访问次数清零
- 优点:实现简单
- 临界问题:如图所示,当在8-10秒和10-12秒内分别并发500,虽然没有超过阈值,但如果算8-12秒,则并发数高达1000,已经超过了原先定义的10秒内不超过500的并发量
- 突刺现象:如果在单位时间10秒内的前100ms,通过了500个请求,则后面的990ms都无法接受任何请求,也就无法应对短时间高并发。