前情知识提要及常见问题
串一下自己学过的东西
- JavaSE
- 数据库
- 前端
- Servlet
- Http
- Mybatis
- Spring
- SpringMVC
- SpringBoot
- Dubbo、Zookeeper、分布式
- Maven、git
- Ajax、json
- …../
xxx
三层架构+MVC
框架:
Spring IOC AOP //简化ssm的代码
SpringBoot 新一代的JavaEE开发标准,自动装配 //简化Spring的配置
模块化开发
微服务架构的四个问题:
- 服务很多,客户端怎么访问?
- 这么多服务?服务之间如何通信?
- 这么多服务?怎么治理?
- 服务挂了怎么办?
解决方案
Spring Cloud 生态圈 基于SpringBoot
Spring Cloud NetFlix — 多数使用,一站式操作,解决大部分问题,但停更:
api网关,zuul组件;
Feign —-HttpClinet —— Http通信方式,同步,阻塞;
服务注册发现:Eureka;
熔断机制:Hystrix;Apache Dubbo Zookeeper — 半自动,需要整合:
API:没有,第三方组件实现或自己实现;
Duboo:RPC通信框架;
Zookeeper:服务注册;
无熔断机制:借助Hystrix;
Duboo方案并不完善Spring Cloud Alibaba — 新的一站式解决方案,更简单:
新概念:服务网格 Server Mesh;
istio;
总结:
- API
- HTTP,RPC
- 注册与发现
- 熔断机制
分布式网络并不可靠,所以需要解决方案
常见面试题:
- 什么是微服务?
- 微服务之间是如何独立通讯的?
- SpringCloud和 Dubbo有哪些区别?
- SpringBoot和SpringCloud,请你谈谈对他们的理解
- 什么是服务熔断?什么是服务降级
- 微服务的优缺点是分别是什么?说下你在项目开发中遇到的坑
- 你所知道的微服务技术栈有哪些?请列举一二
- eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别?
SpringCloud
- 知识点
- 看看面试题
- 微服务和微服务架构
- 基础工程 RestTemplate
- Eureka AP
- 集群配置
- 对比Zookeeper CP
- Ribbon IRule
- Feign 接口,社区要求,更加面向接口编程
- Hystrix
- 熔断
- 降级
- dashboard
- Zuul
- Spring Cloud Config C-S-GIT
- 导入依赖
- 编写配置
- @Enablexxx
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Kirony-blog!
评论