1、内容概述
学习前提:
- JavaSE
- 数据库
- 前端
- Servlet
- Http
- Spring+SpringMVC+Mybatis
- SpringBoot
- dubbo+Zookeeper+分布式基础
- Maven+Git
- Ajax+Json
- ...
这个阶段怎么学习
微服务四个问题:
1、服务很多,客户端怎访问? 2、这么多服务,服务之间怎么通信?
3、这么多服务,怎么治理?
4、服务挂了怎么办?
解决方案选型:
1、Spring Cloud NetFlix(已经停止维护):一站式解决方案!可解决上述4个核心问题
API网关:Zuul组件
通信:Feign --- HttpClient --- Http通信方式,同步,阻塞
服务注册与发现:Eureka
熔断机制:Hystrix
...
2、Apache dubbo Zookeeper:半自动!需要整合别人的
API网关:没有,找到第三方组件(比如整合Zuul组件),或者自己实现
通信:dubbo 是一个基于Java的高性能的RPC通信框架(性能比Feign强大)
服务注册与发现:Zookeeper
熔断机制:没有,需要借助Hystrix
...
3、Spring Cloud Alibaba:目前最新一站式解决方法!可解决上述4个核心问题,更简单
API网关:Zuul组件
通信:dubbo 是一个基于Java的高性能的RPC通信框架(性能比Feign强大)
服务注册与发现:Nacos
熔断机制:Sentinel
...
万变不离其宗4个问题:
1、API网关
2、HTTP,RPC通信
3、注册和发现
4、熔断机制
2、常见面试题
- 什么是微服务?
- 微服务之间是如何独立通讯的?
- SpringCloud 和 dubbo有那些区别?
- SpringBoot 和 SpringCloud,请谈谈你对他们的理解
- 什么是服务熔断?什么是服务降级?
- 微服务的优缺点分别是什么?说下你在项目开发中遇到的坑
- 你所知道的微服务技术栈有哪些?列举一二
- Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说两者的区别
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。