SpringCloud分布式开发五大神兽
服务发现——Netflix Eureka
客服端负载均衡——Netflix Ribbon
断路器——Netflix Hystrix
服务网关——Netflix Zuul
分布式配置——Spring Cloud Config
Eureka
一个RESTful服务,用来定位运行在AWS地区(Region)中的中间层服务。由两个组件组成:Eureka服务器和Eureka客户端。Eureka服务器用作服务注册服务器。Eureka客户端是一个java客户端,用来简化与服务器的交互、作为轮询负载均衡器,并提供服务的故障切换支持。Netflix在其生产环境中使用的是另外的客户端,它提供基于流量、资源利用率以及出错状态的加权负载均衡。
Ribbon
Ribbon,主要提供客户侧的软件负载均衡算法。
Ribbon客户端组件提供一系列完善的配置选项,比如连接超时、重试、重试算法等。Ribbon内置可插拔、可定制的负载均衡组件。下面是用到的一些负载均衡策略:
简单轮询负载均衡
加权响应时间负载均衡
区域感知轮询负载均衡
随机负载均衡
Ribbon中还包括以下功能:
易于与服务发现组件(比如Netflix的Eureka)集成
使用Archaius完成运行时配置
使用JMX暴露运维指标,使用Servo发布
多种可插拔的序列化选择
异步和批处理操作(即将推出)
自动SLA框架(即将推出)
系统管理/指标控制台(即将推出)
Hystrix
断路器可以防止一个应用程序多次试图执行一个操作,即很可能失败,允许它继续而不等待故障恢复或者浪费 CPU 周期,而它确定该故障是持久的。断路器模式也使应用程序能够检测故障是否已经解决。如果问题似乎已经得到纠正,应用程序可以尝试调用操作。
断路器增加了稳定性和灵活性,以一个系统,提供稳定性,而系统从故障中恢复,并尽量减少此故障的对性能的影响。它可以帮助快速地拒绝对一个操作,即很可能失败,而不是等待操作超时(或者不返回)的请求,以保持系统的响应时间。如果断路器提高每次改变状态的时间的事件,该信息可以被用来监测由断路器保护系统的部件的健康状况,或以提醒管理员当断路器跳闸,以在打开状态。
流程图
Zuul
类似nginx,反向代理的功能,不过netflix自己增加了一些配合其他组件的特性。
Spring Cloud Config
这个还是静态的,得配合Spring Cloud Bus实现动态的配置更新。
参考
The Netflix Stack Using Spring Boot - Part 1: Eureka
Netflix开源他们的另一个架构——Eureka
Eureka 的 Application Client 客户端的运行示例
Eureka service 客户端的注册以及运行示例
Linux 下 Eureka 服务器的部署
Spring Cloud源码解析:一个注解加载Eureka client
Spring-cloud & Netflix 源码解析:Eureka client 到Server的调用过程
Spring-cloud & Netflix 源码解析:Eureka client 注册过程
Spring-cloud & Netflix 源码解析:Eureka 服务注册发现接口
Netflix发布云中间层服务开源项目Ribbon
Ribbon 和 Eureka 的集成
CircuitBreaker
Circuit Breaker Pattern(
必读
)断路器模式
Netflix Zuul vs Nginx performance
转载于:https://www.cnblogs.com/XuYiHe/p/6888139.html
SpringCloud分布式开发五大神兽相关推荐
- SpringCloud分布式开发五大神兽(转)
SpringCloud分布式开发五大神兽 服务发现--Netflix Eureka 客服端负载均衡--Netflix Ribbon 断路器--Netflix Hystrix 服务网关--Netflix ...
- SpringCloud分布式开发五大神兽(一)
原文:https://segmentfault.com/a/1190000005029218 SpringCloud分布式开发五大神兽 服务发现--Netflix Eureka 客服端负载均衡--Ne ...
- SpringCloud分布式开发五大组件详解
SpringCloud分布式开发五大组件详解 https://blog.csdn.net/weixin_40910372/article/details/89466955 服务发现--Netflix ...
- SpringCloud 教程(一)| 微服务及五大神兽组件 --- 微服务架构
一.前言. 随着微服务技术的兴起,越来越多的项目都在使用 微服务架构,学习的趋势已经刻不容缓,这几天特意学习了一下,在此记录. 特别感谢 方志朋 老师的博客.https://blog.csdn.net ...
- java复习笔记4--SpringCloud系列二:五大神兽之Eureka
前面两天介绍了SpringCloud的基础知识,以及窥探了一下加载流程,整个代码还是很长并且晦涩的,一定要多debug去跟进,看每个对象何时创建和赋值,一步步跟着走,这样才能对整个流程有一个很好的了解 ...
- spring cloud微服务分布式云架构-Spring Cloud 分布式的五大重点
SpringCloud分布式的五大重点的基本介绍 服务器的注册与发现-Netflix Eureka 客户端负载均衡-Netflix Ribbon 断路器-Netflix Hystrix 服务网关-Ne ...
- springcloud五大神兽之Eureka介绍
一.springcloud简介 1.0 什么是微服务? ① 业务角度 从业务角度分析,就是将整体项目(传统的一站式应用)按照业务拆分,将每个业务拆分为一个个独立的服务,彻底解除业务模块之间的耦合,每个 ...
- SpringCloud学习笔记3:Spring Cloud Netflix 组件(五大神兽)
一.Spring Cloud Netflix有哪些组件? eureka (提供服务注册与发现功能) ribbon(提供负载均衡功能) Feign(整合了ribbon和Hystrix,具有负载均衡和熔断 ...
- java四神兽_SpringCloud五大神兽之Eureka
注册中心概述 什么是注册中心? 相当于服务之间的'通讯录',记录了服务和服务地址之间的映射关系.在分布式架构中服务会注册到这里.当服务需要调用其他服务时,就在注册中心找到其他服务的地址,进行调用 注册 ...
最新文章
- 每天一个linux命令(2):文件权限详解
- linux登oracle登陆不了,oracle: linux服务器本机不能登陆的解决
- linux重启sshd命令,重启sshd服务
- linux ljie mysql_[Linux Mysql] Linux下Mysql的基本操作
- 程序员面试金典 - 面试题 05.08. 绘制直线(位运算)
- Typedef的一些用法总结
- 问题 F: 编写函数:一维数组的逆序 (Append Code)
- webpack的面试题
- php编写一个学生类_0063 PHP编程编写学生分数信息编辑和删除功能网页
- 李岩 太极计算机,《高中体育游戏300例》李岩_孔网
- 解决chrome浏览器应用商店排版混乱问题
- 【图像去噪】基于非局部均值(NLM)滤波图像去噪含Matlab源码
- Linux用户空间和内核空间是什么?
- linux如何启动一个进程而不阻塞,当你在 Linux 上启动一个进程时会发生什么? | Linux 中国...
- 复旦MBA:热情从未消退,让这场云端盛会点燃你的斗志
- 广东版七年级上册英语书,七年级上册英语广东版
- 最大的郁闷,关于psp的升级问题
- oracle账号分享
- MMCV——build_norm_layer
- 【MacOS】装 mac-win10 双系统(2017年的老mac,Intel芯片)
热门文章
- SQL Server:查找表的生成或顺序
- Microsoft Visual Studio使用NodeJS
- 远程同步修改云服务器上的文件
- 微信小程序获取二维码中URL中带的参数
- 数据库报错SELECT list is not in GROUP BY clause and contains nonaggregated col
- 小程序提交不能保存,后台可以正常保存
- 我的世界服务器皮肤显示插件怎么用,我的世界皮肤和插件安装方法
- 华为户外模式怎么设置_华为FreeLace Pro降噪器效果怎么样?降噪开启和设置教程!...
- doe全称是什么意思_QA、QC、QE…都是什么意思
- linux找回删除的文件6,在Centos6/RHEL6上恢复ext4文件系统下误删除的文件