SpringCloud01:学习前言

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、常见面试题

  1. 什么是微服务?
  2. 微服务之间是如何独立通讯的?
  3. SpringCloud 和 dubbo有那些区别?
  4. SpringBoot 和 SpringCloud,请谈谈你对他们的理解
  5. 什么是服务熔断?什么是服务降级?
  6. 微服务的优缺点分别是什么?说下你在项目开发中遇到的坑
  7. 你所知道的微服务技术栈有哪些?列举一二
  8. Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说两者的区别

相关文章

在网络请求时,总会有各种异常情况出现,我们需要提前处理这...
作者:宇曾背景软件技术的发展历史,从单体的应用,逐渐演进...
hello,大家好呀,我是小楼。最近一个技术群有同学at我,问我...
 一个软件开发人员,工作到了一定的年限(一般是3、4年左右...
当一个服务调用另一个远程服务出现错误时的外观Dubbo提供了多...
最近在看阿里开源RPC框架Dubbo的源码,顺带梳理了一下其中用...