微服务架构4个核心问题:
这四个问题围绕这我们去学的一些东西,是重点!!!
1.服务很多,客户端该如何访问?
2.这么多服务,服务之间该如何通信?
3.这么多服务,该如何治理?
4.服务挂了怎么办?
解决方案:
Spring Cloud 生态! 记住它是一个生态。
生态是干嘛的
就是为了解决上面四个问题的
springcloud 是基于springboot的 没学好springboot的同学先别着急往下学。
要不然可能会有点吃力!
1. Spring Cloud NetFlix 一站式解决方案!
api网关,zuul组件
Feign---HttpClient ---- Http 通信方式, 同步,阻塞
服务注册发现: Eureka
熔断机制:Hystrix
。。。。
停更了
2. Spring Dubbo zookeeper 半自动 ,需要整合别人的!
API 网关 : 没有 ,找第三方组件,或者自己实现
Dubbo :
zookeeper
没有熔断机制, 借助Hystrix
Dubbo这个方案并不完善~
3. Spring Cloud Alibaba 一站式解决方案! 更简单
现在有这三种解决方案
新概念:服务网格 ~server Mesh
万变不离其中
路由 1.API网关
通信 2.HTTP,PRC
高可用 3.注册 和 发现
服务降级问题 ,防止服务雪崩 4. 熔断机制
其实产生那四个问题最主要的原因:网络不可靠
1.常见面试题
1.1 、什么是微服务?
1.2、微服务之间是如何独立通讯的?
1.3、SpringCloud 和 Dubbo 有哪些区别?
1.4、SpringBoot和SpringCloud,请你谈谈对他们的理解?
1.5、什么式服务熔断? 什么是服务降级?
1.6、微服务的优缺点分别是什么?说下你在项目开发中遇到的坑?
1.7、你所知道的微服务技术栈有哪些? 请列举 一二?
1.8、Eureka 和 zookeeper 都可以提供服务注册与发现的功能,请说说两个的区别?