当前位置: 首页 > news >正文

【SpringCloud】SpringCloudNetflix笔记

SpringCloudNetflix笔记

1、微服务概述

1.1 SpringCloudNetflix五大组件

  • 服务注册与发现——Netflix Eureka
  • 负载均衡:
    • 客户端负载均衡——Netflix Ribbon
    • 服务端负载均衡:——Feign(其也是依赖于Ribbon,只是将调用方式RestTemplete 更改成Service 接口)
  • 断路器——Netflix Hystrix
  • 服务网关——Netflix Zuul
  • 分布式配置——Spring Cloud Config

1.2 常见面试题

1.1、 什么是微服务?

1.2 、微服务之间是如何独立通讯的?

1.3 、SpringCloud 和 Dubbo有那些区别?

1.4 、SpringBoot 和 SpringCloud,请谈谈你对他们的理解

1.5 、什么是服务熔断?什么是服务降级?

1.6 、微服务的优缺点分别是什么?说下你在项目开发中遇到的坑

1.7 、你所知道的微服务技术栈有哪些?列举一二

1.8、 Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说两者的区别

1.3 微服务的引入

最开始开发使用的是MVC三层架构

后来为了简化代码就升级为了Spring——轻量级的Java的开发框架

因为Spring的配置过多,就升级为了SpringBoot——新一代的 JavaEE开发标准

再往后用户量越来越多,服务越来越多,单纯的SpringBoot就支撑不住了,就需要使用微服务来解决

1.4 微服务与微服务架构

微服务

强调的是服务的大小,它关注的是某一个点,是具体解决某一个问题的一个服务应用。狭义的看,可以看作是IDEA中的一个个Module。

微服务架构

微服务架构是一种架构模式,将传统的单体式应用,根据业务拆分成一个一个的服务,每一个服务实现单个业务的功能,服务相互之间使用HTTP进行通信。

1.5 微服务架构需要解决的四个核心问题

微服务架构需要解决的四个核心问题

1.服务很多,客户端该如何访问?(API网关)
2.服务很多,服务之间如何通信?(HTTP,RPC)
3.服务很多,如何治理?(注册与发现)
4.服务挂了怎么办?(熔断机制)

解决上述问题的方案

SpringCloud就是一个解决上述问题的生态。

1.Spring Cloud NetFlix 一站式解决方案API网关:zuul通信:Feign(基于HTTP的通信方式)服务注册和发现:Eureka熔断机制:Hystrix
2.Apache Dubbo Zookeeper 半自动解决方案API网关:没有通信:Dubbo(基于Java开发的RPC框架)服务注册和发现:Zookeeper熔断机制:没有
3.Spring Cloud Alibaba 最新的一站式解决方案API网关:SpringCloudGateway通信:OpenFeign服务注册和发现:Nacos熔断机制:Sentinel

1.6 SpringCloud和SpringBoot的关系

  • SpringBoot专注于方便的开发单体微服务。
  • SpringCloud是关注全局的微服务协调治理框架,它将SpringBoot开发的一个个单体微服务,整合并管理起来,为各个微服务之间提供:配置管理、服务发现、断路器、路由等服务。
  • SpringBoot可以离开SpringCloud单独使用。但SpringCloud离不开SpringBoot。

2、SpringcloudNetflix原理与应用

参考链接
参考链接

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 重塑购车体验,实时云渲染赋能东风日产探路云看车新体验
  • Date类型的字段序列化成JSON字符串
  • bug: 配置flyway.locations多个脚本位置不生效
  • SpringBoot整合支付宝沙箱支付流程(干货·精简版)Java毕业设计亮点 通俗易懂
  • Linux查看系统线程数
  • Python 爬虫项目实战五:抓取天猫超市商品信息
  • 数据结构 - 哈希表
  • 【C++进阶学习】第十二弹——C++ 异常处理:深入解析与实践应用
  • linux命令:scp与rsync
  • 关闭Windows安全中心
  • 个人编程原则总结(不喜勿喷)
  • 前缀和处理数组区间之和问题
  • Vue3项目创建及相关配置
  • C++ primer plus 第17 章 输入、输出和文件:文件输入和输出02:流状态检查和is_open():打开多个文件:命令行处理技术
  • Python配置镜像
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • Date型的使用
  • JS题目及答案整理
  • mysql 5.6 原生Online DDL解析
  • PHP 小技巧
  • Python十分钟制作属于你自己的个性logo
  • ReactNativeweexDeviceOne对比
  • spring boot下thymeleaf全局静态变量配置
  • SQLServer之索引简介
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 服务器之间,相同帐号,实现免密钥登录
  • 复杂数据处理
  • 技术:超级实用的电脑小技巧
  • 前端
  • 实战:基于Spring Boot快速开发RESTful风格API接口
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 微信小程序填坑清单
  • 为视图添加丝滑的水波纹
  • 限制Java线程池运行线程以及等待线程数量的策略
  • No resource identifier found for attribute,RxJava之zip操作符
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • ​ArcGIS Pro 如何批量删除字段
  • ​flutter 代码混淆
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • #APPINVENTOR学习记录
  • $.ajax,axios,fetch三种ajax请求的区别
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第1节 (全局数据、栈和堆)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第2节(共同的基类)
  • (k8s)Kubernetes 从0到1容器编排之旅
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (每日一问)计算机网络:浏览器输入一个地址到跳出网页这个过程中发生了哪些事情?(废话少说版)
  • (五)c52学习之旅-静态数码管
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转)关于如何学好游戏3D引擎编程的一些经验
  • .htaccess配置重写url引擎
  • .Net CF下精确的计时器
  • .net 托管代码与非托管代码