springboot&&springcloud知识点
spring cloud
常见面试题:
A、https://blog.csdn.net/panhaigang123/article/details/79587612
B、https://blog.csdn.net/qq_39089301/article/details/80476284
1.什么是微服务?
2.微服务之间是如何独立通信的?
3.spring cloud和dubbo有哪些区别?
4.spring boot和spring cloud,请谈谈你对他们的理解?
spring boot专注于快速方便的开发单个个体微服务
spring cloud是关注全局的微服务协调整体治理框架,它将spring boot开发的一个个单体服务整合并管理起来,
为各个微服务之间提供:配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等集成服务
spring boot可以离开spring cloud独立使用开发项目,但是spring cloud离不开spring boot,属于依赖关系。
总结:spring boot专注于快速、方便的开发单个微服务个体,spring cloud是关注全局的服务治理框架。
5.什么是服务熔断?什么是服务降级?
6.微服务的优缺点分别是什么?
7.你所遇到的微服务技术栈有哪些?请列举一二。
8.eureka和zookeeper都可以提供服务注册与发现的功能,请说说他们俩的区别?
(最大区别)著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。
由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。
参考:
9.springcloud常用组件:
一、Eureka (Netfix下)
负责服务注册与发现,一个基于 REST 的服务,用于定位服务,以实现云端中间层服务发现和故障转移。
二、Spring Cloud Config (Spring下)
配置管理工具包,让你可以把配置放到远程服务器,集中化管理集群配置,目前支持本地存储、Git以及Subversion。
三、Spring Cloud Bus (Spring下)
事件、消息总线,用于在集群(例如,配置变化事件)中传播状态变化,可与Spring Cloud Config联合实现热部署。
四、Ribbon (Netflix下)
提供云端负载均衡,有多种负载均衡策略可供选择,可配合服务发现和断路器使用。
五、Feign (OpenFeignx下)
(负载均衡)Feign是一种声明式、模板化的HTTP客户端。
六、Hystrix (Netflix下)
熔断器,容错管理工具,旨在通过熔断机制控制服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。
七、Zuul (Netflix下)
Zuul 是在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。
八、Spring Cloud Sleuth (Spring下)
日志收集工具包,封装了Dapper和log-based追踪以及Zipkin和HTrace操作,为SpringCloud应用实现了一种分布式追踪解决方案。
九、Spring Cloud Security (Spring下)
基于spring security的安全工具包,为你的应用程序添加安全控制。
10.什么是springcloud?
简单来说:SpringCloud=分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶。
· Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具
例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式会话,群集状态)。
分布式系统的协调导致锅炉板模式,使用Spring Cloud开发人员可以快速站出实现这些模式的服务和应用程序。
他们可以在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心和托管平台,如Cloud Foundry。
11.Springboot与SpringCloud的关系
举个例子springboot类似于医院里的各个科室,Springcloud就像整个医院。
springboot专注于快速方便的开发单个个体微服务。
Springcloud是关注全局微服务协调治理框架,它将springboot开发的一个个单体微服务整合起来。
为各个服务之间提供,配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式会话,状态等。
springboot可以离开SpringCloud独立使用开发项目,但是SpringCloud离不开SpringBoot,属于依赖管理。
12.springcloud与dubbo的对比。
详细对比地址:https://blog.csdn.net/qiumuxia0921/article/details/52713791
最大区别:SpringCloud抛弃了Dubbo的RPC通信,采用的是基于HTTP的REST方式。
A、消息中间件用于解耦和分流
B、zookeeper用于服务的注册和发现
C、dubbo用于服务的治理和调用
D、redis的哨兵模式配置
E、spring cloud 相应文档:中文网: https://springcloud.cc/ 中国社区: http://springcloud.cn/
F、微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合,每一个微服务的提供单个业务功能的服务,
一个服务做一件事,从技术角度看就是一种小而独立的处理过程,类似进程概念,能够自行的单独启动或销毁,拥有自已独立的数据库。
G、
Eureka(有略卡):负责服务的注册与发现。
Ribbon(绿本):负责负载均衡。
Feign():负责负载均衡。Feign集成了Ribbon,利用Ribbon维护了服务列表信息,并且通过轮询实现了客户端的负载均衡。而与Ribbon不同的是,通过Feign只需要定义服务
绑定接口以声明式的方法,优雅而简单的实现了服务调用。
Hystrix():断路器。
springboot&&springcloud知识点的更多相关文章
- 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)
[原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...
- spring springMvc spring-boot spring-cloud分别是什么
本文来源于:克己习礼成仁 的<spring springMvc spring-boot spring-cloud分别是什么> 什么是spring 关于spring的定义无论是从官方还是 ...
- 基于【 springBoot +springCloud+vue 项目】一 || 项目架构简介
一.前言 基于前期学习以及工作经验积累,持续更新基于springboot+springcloud+vue的demo项目.
- Spring SpringMVC SpringBoot SpringCloud 注解整理大全
Spring SpringMVC SpringBoot SpringCloud 注解整理 才开的博客所以放了一篇以前整理的文档,如果有需要添加修改的地方欢迎指正,我会修改的φ(๑˃∀˂๑)♪ Spri ...
- spring-boot+spring-cloud+maven-module 一个 maven多模块的微服务架构模版
spring-boot-cloud-module spring-boot+spring-cloud+maven-module 一个 maven多模块的微服务架构模版. 新手上路的绝佳模版,只有必要的配 ...
- JNPF.java前后端分离框架,SpringBoot+SpringCloud开发微服务平台
JNPF.java版本采用全新的前后端分离架构模式.前后端分离已成为互联网项目开发的业界标准开发方式,通过 nginx+tomcat 等方式有效的进行解耦合,并且前后端分离会为以后的大型分布式架构.弹 ...
- Spring SpringMVC SpringBoot SpringCloud概念、关系及区别
一.正面解读: Spring主要是基于IOC反转Beans管理Bean类,主要依存于SSH框架(Struts+Spring+Hibernate)这个MVC框架,所以定位很明确,Struts主要负责表示 ...
- SpringBoot + SpringCloud学习踩坑实记
踩的坑: 1).springcloud框架中,依赖一直报错,很可能是没有添加springcloud的依赖,或者是依赖的版本号过低.并且springboot也有一个父依赖. 2.springcloud ...
- SpringCloud知识点20190313
1.SpringBoot和SpringCloud的关系(面试题) Spring Boot 可以离开 Spring Cloud 单独使用开发项目,但是Spring Cloud离不开SpringBoot, ...
随机推荐
- python基础之面向对象OOP
#类(面向对象) PageObject设计模式 unittest 知识体系#函数式编程import datetimebook_info = { "title":"Pyth ...
- Requests方法 -- 参数化
import requests#禁用安全请求警告from requests.packages.urllib3.exceptions import InsecureRequestWarningreque ...
- 【Javaweb】Cookie和Session
会话技术 什么是会话 从浏览器访问服务器开始,到访问服务器结束,浏览器关闭为止的这段时间内容产生的多次请求和响应,合起来叫做浏览器和服务器之间的一次会话 会话管理作用 共享数据用的,并且是在不同请求间 ...
- PGSQL存储过程学习
一.存储过程定义: 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参 ...
- Spring Cloud Alibaba基础教程:Nacos+Dubbo
Spring Cloud Alibaba为分布式应用程序开发提供了一站式解决方案. 它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用Spring Cloud开发应用程序.Dubbo是Alib ...
- videojs文档翻译-SeekBar
SeekBar 拖动条和进度条的容器. 使用PlayProgressBar作为其栏. 构造函数 new SeekBar(player, optionsopt) 创造此类的实例 Parameters: ...
- centos linux下配置固定ip,方便xshell连接
如何给centos linux设置固定ip地址,设置Linux系统的固定IP地址 首先wmware打开虚拟机 打开xshell6连接虚拟机(比较方便,这里默认设置过Linux的ip,只是不固定,每次打 ...
- 什么是RSA
一.RSA引入: RSA是什么,嗯,这是一个好问题,有没有兴趣啊 二.RSA的解释: RSA是一种加密方式,它是现代密码学的代表(什么是现代密码学,这个吗,我感觉就是我们所使用的密码的加密的方式之一可 ...
- 来看看是什么原因导致生产服上的系统CPU高的?
我们可能会遇到生产服务器CPU很高的问题,有时候能确定是哪个进程,但是不知道这个进程都在干什么,所以也无从下手,无法解决问题.只能不断的重启,重启等. 最近也看了[一线码农]的一些教程,觉得都很不错, ...
- JVM 内存分配、调优案例
内存分配 对象优先在Eden区分配 大多数情况下,对象在新生代Eden区中分配.当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC. HotSpot虚拟机提供了-XX:+PrintG ...