| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> SpringCloud -> 正文阅读 |
|
[Java知识库]SpringCloud |
目录 Spring Cloud Eureka 和 Zookeeper 的区别(面试) 一、什么是SpringCloud?SpringCloud为了管理、治理好我们的微服务,从多个角度提供了很多组件给我们用。 SpringCloud是微服务思想的实现。SpringCloud是Java语言的微服务框架。什么是微服务在为什么要学SpringCloud中介绍。它依赖于 Spring Boot,简化了很多配置文件的编写。 Spring Cloud 就是通过提供一系列开发组件和框架,帮助开发者迅速搭建 一个分布式的微服务系统。主要由三家公司Spring Netflix Alibaba提供一些组件。 Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。 二、为什么要学SpringCloud?单体架构应用的缺点大于优点,所以推出了分布式架构应用:将一个应用拆分成多个小的模块,每个模块都有自己的功能和职责,每个模块可以进行交互,这就是微服务,每个模块都是一个微小的服务用来服务整体应用。 而为了更好的管理和治理这些个微服务,就需要使用SpringCloud中提供的各个组件。 微服务架构的4个核心问题1、有很多个服务,客户端该怎么访问? 2、这么多服务,各个服务之间该如何通信完成功能? 3、这么多服务,应该如何管理? 4、这么多服务,要是有一个服务挂了怎么办? 而我们的SpringCloud生态中的各个组件就是为了解决这四个问题而出现的。 三、怎么用SpringCloud?0、SpringCloud 常用组件表?服务的注册和发现。(eureka, nacos, consul) 服务的负载均衡。 (ribbon, dubbo) 服务的相互调用。(openFeign, dubbo) 服务的容错。(hystrix, sentinel) 服务网关。(gateway, zuul) 服务配置的统一管理。(config-server, nacos, apollo) 服务消息总线。 (bus) 服务安全组件。 (security, Oauth2 . 0) 服务监控。 (admin) (jvm) 链路追踪。 (sleuth+zipkin) 0、SpringCloud 版本对应关系【开发重点】SpringCloud用哪个版本需要对应版本的SpringBoot,然后如果用了Alibaba的某个版本的组件,也需要对应版本的SpringBoot,所以版本一定要注意。可以去spring官网参考。 SpringCloud和SpringBoot的对应版本: ?Alibaba、cloud、boot的版本对应: 1、解决微服务架构的4个核心问题的方案1、有很多个服务,客户端该怎么访问? 2、这么多服务,各个服务之间该如何通信完成功能? 3、这么多服务,应该如何管理? 4、这么多服务,要是有一个服务挂了怎么办? 而我们的SpringCloud生态中的各个组件就是为了解决这四个问题而出现的。 1)Spring Cloud NetFlix 一站式解决方案API网关:zuul组件 Feign--HttpClient--服务间采用Http通信方式,同步,阻塞 服务注册和发现:使用Euraka管理服务 熔断机制:Hystrix 2)Apache Dubbo Zookeeper 半自动,需要整合一些别人的组件API网关:没有,需要借助第三方组件(如zuul组件)或自己编码实现 服务通信:Dubbo 服务注册中心:Zookeeper 熔断机制:没有,借助第三方Hystrix 3)Spring Cloud Alibaba 一站式解决方案,更简单!2、SpringBoot和SpringCloud的关系SpringBoot用来开发微服务架构中的一个个微服务,而Spring Cloud是用来协同管理治理这些微服务。 SpringCloud依赖SpringBoot,离不开。 3、Spring Cloud Eureka服务注册与服务发现的组件 Eureka 来源于古希腊词汇,意为“发现了”。在软件领域, Eureka 是 Netflix 公司开源的一个?服务注册与发现?的组件,和其他 Netflix 公司的服务组件(例如负载均衡、 熔断器、网关等) 一起,被 Spring Cloud 社区整合为 Spring Cloud Netflix 模块。 Eureka 是 Netflix 贡献给 Spring Cloud 的一个框架! Netflix 给 Spring Cloud 贡 献了很多框架,后面我们会学习到! 1.1 Spring Cloud Eureka 和 Zookeeper 的区别(面试)什么是CAP原则?
区别?
1.2 搭建 Eureka- server?Eureka Server提供服务注册 服务,各个服务节点启动后,会在Eureka Server中进行注册,这样EurekaServer中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到。 就像饿了吗软件,就可以理解为一个注册中心,各个商家在里面注册, 1.3?搭建 Eureka- client
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 13:21:05- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |