SpringCloud
文章平均质量分 73
35s
这个作者很懒,什么都没留下…
展开
-
SpringCloud-Config分布式配置
概述 分布式系统面临的-配置文件的问题? 微服务意味着要将单体应用中的业务拆分成一个个子服务, 每个服务的粒度相对较小,因此系统中会出现大量的服务,由于每个服务都需要必要的配置信息才能运行,所以一套集中式的,动态的配置管理设施是必不可少的。 SpringCloud提供了ConfigServer来解决这个问题,我们每一个微服务 自己带着一个application.yml, 那上百的的配置文件要修改起来,岂不是要发疯! 什么是SpringCloud config分布式配置中心? Spring Clou原创 2021-03-07 11:18:15 · 99 阅读 · 1 评论 -
SpringCloud-Zuul路由网关
什么是Zuul? Zuul包含了对请求的路由和过滤两个最主要的功能: 其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础。 而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础。 Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过Zuul跳转后获得。 注意:Zuul服务最终还是会注册进Eureka 提供:代理 + 路由 + 过滤 三大功能!原创 2021-03-06 19:35:41 · 150 阅读 · 1 评论 -
SpringCloud-Hystrix-Dashboard客户端服务监控
服务监控 除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求,多少成功,多少失败等等。 Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控,SpringCloud也提供了HystrixDashboard的整合,对监控内容转化成可视化界面! 监控服务测试 服务监控是针对客户端(原创 2021-03-06 17:45:27 · 187 阅读 · 3 评论 -
SpringCloud-Hystrix-服务降级
服务降级是什么? 整体资源快不够了,忍痛将某些服务先关掉,待渡过难关,再开启回来 服务降级处理是在客户端实现完成的,与服务端没有关系原创 2021-03-05 21:53:50 · 123 阅读 · 0 评论 -
SpringCloud-Hystrix-服务熔断
服务雪崩 多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B 和微服务C又调用其他的微服务,这就是所谓的 “扇出”、如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,所谓的 “雪崩效应”。 对于高流量的应用来说,单一的后端依赖可能会导致所有服务器上的所有资源都在几秒中内饱和。比失败更糟糕的是,这些应用程序还可能导致服务之间的延迟增加,备份队列,线程和其他系统资源紧张,导致整个系统发生更多的级联故障,这些都表示需要对故.原创 2021-03-05 10:13:19 · 105 阅读 · 1 评论 -
SpringCloud-知识点区分
Dubbo+Zookeeper (RPC调用) 服务之间通过暴露接口(相同的接口)+ @reference 远程引用 SpringCloud 通过 RestTemplate + 服务的url 调用 SpringCloud+Ribbon 通过 RestTemplate + 服务名 调用 SpringCloud+Feign Feign继承了 Ribbon ,通过注入服务service接口对象,调用服务方法 ...原创 2021-03-04 16:42:04 · 61 阅读 · 1 评论 -
SpringCloud-Feign
简介 feign是声明式的web service客户端,它让微服务之间的调用变得更简单了,类似controller调用service。 Spring Cloud集成了Ribbon和Eureka,可在使用Feign时提供负载均衡的http客户端。 只需要创建一个接口,然后添加注解即可! feign ,主要是社区,大家都习惯面向接口编程。这个是很多开发人员的规范。 调用微服务访问两种方法 微服务名字 【ribbon】 接口和注解 【feign 】 Feign能干什么? Feign旨在使编写Java原创 2021-03-03 14:18:34 · 90 阅读 · 2 评论 -
SpringCloud-Ribbon-自定义负载均衡算法
Ribbon核心组件IRule IRule:根据特定算法从服务列表中选取一个要访问的服务! 项目 Value RoundRobinRule 轮询 RandomRule 随机 AvailabilityFilterRule 会先过滤掉由于多次访问故障而处于断路器跳闸的服务,还有并发的连接数量超过阈值的服务,然后对剩余的服务列表按照轮询策略进行访问 WeightedResponseTimeRule 根据平均响应时间计算所有服务的权重,响应时间越快服务权重越大,被选中的概率越高原创 2021-03-02 21:02:15 · 146 阅读 · 0 评论 -
SpringCloud-Ribbon-客户端负载均衡
客户端负载均衡架构 Ribbon在工作时分成两步 : 第一步先选择EurekaServer,它优先选择在同一个区域内负载均衡较少的Server。 第二步在根据用户指定的策略,在从server去到的服务注册列表中选择一个地址。 其中Ribbon提供了多种策略,比如轮询(默认),随机和根据响应时间加权重…等等 测试 3个数据库 3个Eureka注册中心 3个服务提供者 1个服务消费者 3个数据库 db01、db02、db03 CREATE TABLE dept( deptno BIGINT原创 2021-03-02 17:24:09 · 104 阅读 · 0 评论 -
SpringCloud-Ribbon负载均衡
Ribbon是什么? Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将NetFlix的中间层服务连接在一起。 Ribbon的客户端组件提供一系列完整的配置项如:连接超时、重试等等。 简单的说,就是在配置文件中列出LoadBalancer(简称LB:负载均衡)后面所有的机器,Ribbon会自动的帮助你基于某种规则(如简单轮询,随机连接等等)去连接这些机器。原创 2021-03-01 19:09:16 · 79 阅读 · 0 评论 -
SpringCloud-Eureka和Zookeeper对比
ACID与CAP RDBMS关系型数据库。比如 Mysql、Oracle、sqlServer都符合ACID原则 NoSQL 非关系型数据库。比如 redis、mongdb都符合 CAP原则 ACID原则CAP原则 1. ACID是什么? A(Atomicity)原子性 C(Consistency) 一致性 I (Isolation)隔离性 D(Durability)持久性 2. CAP是什么? C(Consistency)强一致性 A(Availability)可用性 P(Partition tole原创 2021-03-01 18:59:24 · 88 阅读 · 0 评论 -
SpringCloud-Eureka集群配置
1. 创建多个单独的Eureka Moudle,设置为不同的端口 2. Eureka Moudle的创建步骤详情见 链接: SpringCloud-Eureka服务构建. 3. 例如有三个Eureka Moudle 端口分别为: 7001、7002、7003. 7001里绑定7002、7003 7002里绑定7001、7003 7003里绑定7001、7002 4. 当其中一个Eureka Server宕机时,会自动注册到其他两个Eureka Server 模拟多个不同ip地址的服务器上存放的Eur原创 2021-03-01 17:44:03 · 94 阅读 · 0 评论 -
SpringCloud-Eureka服务构建
一个服务通常的启动步骤 导入依赖 编写配置文件 启动服务 Eureka服务端构建 1. 导入依赖 spring-cloud-starter-eureka-server已经停止更新,如果出现版本不适配,可以尝试用spring-cloud-starter-netflix-eureka-server的依赖 <dependency> <groupId>org.springframework.cloud</groupId>原创 2021-02-28 22:17:30 · 111 阅读 · 1 评论 -
SpringCloud-Eureka
什么是Eureka? Eureka是Netflix的一个子模块,也是核心模块之一。 Eureka是一个基于REST的服务,用于定位服务,以实现云端中间层服务发现和故障转移,服务注册与发现对于微服务来说是非常重要的,有了服务发现与注册,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如Zookeeper; Eureka的基本架构: SpringCloud 封装了NetFlix公司开发的Eureka模块来实现服务注册和发现 Eureka采用了C原创 2021-02-27 17:48:53 · 107 阅读 · 1 评论 -
SpringCloud-Rest环境搭建
两个springboot项目,一个打包方式为pom,被另一个springboot 项目引入,原创 2021-02-23 17:11:58 · 134 阅读 · 0 评论 -
SpringCloud初识
SpringCloud是什么? SpringCloud, 基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基于NetFlix的开源组件做高度抽象封装之外,还有一些选型中立的开源组件。 SpringCloud利用SpringBoot的开发便利性,巧妙地简化了分布式系统基础设施的开发,SpringCloud为开发人员提供了快速构建分布式系统的一些工具,包括配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布原创 2021-02-26 11:29:57 · 75 阅读 · 0 评论