Spring Cloud Alibaba

SpringCloud组件的停更和替换说明

最后都变了- 提交于 2020-08-18 15:29:57
SpringCloud的Hoxton版本,和之前的版本相比,用新的组件替换掉了原来大部分的组件,老的组件现在处于 停更不停用 的状况。 详情见下图( × 的表示之前的组件,现在停更了的; √ 的表示新的替换后的组件): 描述: 服务注册中心: Eureka:官方停止更新,并且已经有更好的替代产品了,可以使用,但是官方已经不建议使用了(重度患者)。 Zookeeper:某些老系统,以前是用的Zookeeper + Dubbo,后来做技术升级,结果发现SpringCloud的Eureka停更了,然后就用了最少的技术切换,那么就用了Zookeeper做注册中心。 Consul:go语言开发的,也是一个优秀的服务注册框架,但是使用量较少,风头都被Nacos抢了。 Nacos:来自于SpringCloudAlibaba,在企业中经过了百万级注册考验的,不但可以完美替换Eureka,还能做其他组件的替换,所以强烈建议使用,是学习的重点。 服务调用: Ribbon:也进入了维护状态,停止更新了,但是Spring官方还在使用(轻度患者)。 LoadBalancer:Spring官方推出的一个新的组件,打算逐渐取代掉Ribbon,但是现在还处于萌芽状态。 服务调用2: Feign:Netflix 公司产品,也停止更新了。 OpenFeign:Spring社区等不了Netflix更新了

Spring Cloud Alibaba系列(五)sentinel实现服务限流降级

孤街醉人 提交于 2020-08-17 07:35:46
一、sentinel是什么 sentinel的官方名称叫分布式系统的流量防卫兵。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。在Spring Cloud项目中最开始我们使用的是Hystrix,目前已停止更新了。现在Spring Cloud官方推荐的是rensilience4j。当然还有我们今天学习的sentinel。 Sentinel 具有以下特征: 丰富的应用场景 :Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。 完备的实时监控 :Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运 行情况。 广泛的开源生态 :Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。 完善的 SPI 扩展点 :Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。 二、sentinel实现限流 2.1

【SpringCloud】Spring Cloud Alibaba 之 Sentinel熔断降级(三十一)

浪子不回头ぞ 提交于 2020-08-17 06:26:39
Sentinel熔断降级   Sentinel除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一。由于调用关系的复杂性,如果调用链路中的某个资源不稳定,最终会导致请求发生堆积。Sentinel 熔断降级会在调用链路中某个资源出现不稳定状态时(例如调用超时或异常比例升高),对这个资源的调用进行限制,让请求快速失败,避免影响到其它的资源而导致级联错误。当资源被降级后,在接下来的降级时间窗口之内,对该资源的调用都自动熔断(默认行为是抛出 DegradeException )。 降级策略   通常用以下几种方式来衡量资源是否处于稳定的状态: 平均响应时间 ( DEGRADE_GRADE_RT ):当 1s 内持续进入 N 个请求,对应时刻的平均响应时间(秒级)均超过阈值( count ,以 ms 为单位),那么在接下的时间窗口( DegradeRule 中的 timeWindow ,以 s 为单位)之内,对这个方法的调用都会自动地熔断(抛出 DegradeException )。注意 Sentinel 默认统计的 RT 上限是 4900 ms,超出此阈值的都会算作 4900 ms,若需要变更此上限可以通过启动配置项 -Dcsp.sentinel.statistic.max.rt=xxx 来配置。 异常比例 ( DEGRADE_GRADE_EXCEPTION

Springboot使用Nacos做配置中心)

南笙酒味 提交于 2020-08-13 23:11:12
Springboot使用Nacos做配置中心 环境 项目配置 高级使用 配置dev,prod,test环境 微服务之间互相隔离配置 每个微服务创建自己的命名空间,使用配置分组区分环境,dev,test,prod 环境 jdk: 1.8 maven: 3.6.3 Idea 项目配置 新建一个Springboot项目,用Idea自动创建就可以,下面开始使用。 引入SpringcloudAlibaba依赖 < dependencyManagement > < dependencies > < dependency > < groupId > com . alibaba . cloud < / groupId > < artifactId > spring - cloud - alibaba - dependencies < / artifactId > < version > 2.2 .0 . RELEASE < / version > < type > pom < / type > < scope > import < / scope > < / dependency > < / dependencies > < / dependencyManagement > 然后再引入config依赖 < dependency > < groupId > com . alibaba . cloud

掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地上篇

本小妞迷上赌 提交于 2020-08-13 15:40:41
联席作者:吴毅挺 任浩军 张彬彬 廖梦鸽 张金星 胡振建 郑重鸣谢:Nacos - 彦林,Spring Cloud Alibab - 小马哥、落夜,Nacos 社区 - 张龙(pader)、春少(chuntaojun) 前言 在高速发展的时候,公司规模越来越大,老师人数越来越多,这时候公司不能铺太多人去做运营与服务,必须提高每个人效,这就需要技术驱动。因此掌门教育转变成一家技术驱动型的公司,如果被迫成为一家靠资金驱动的公司就活不下去了。 -- 张翼(掌门教育创始人兼 CEO) 掌门教育自 2014 年正式转型在线教育以来,秉承“让教育共享智能,让学习高效快乐”的宗旨和愿景,经历云计算、大数据、人工智能、 AR / VR / MR 以及现今最火的 5G ,一直坚持用科技赋能教育。掌门教育的业务近几年得到了快速发展,特别是今年的疫情,使在线教育成为了新的风口,也给掌门教育新的机遇。 随着业务规模进一步扩大,流量进一步暴增,微服务数目进一步增长,使老的微服务体系所采用的注册中心 Eureka 不堪重负,同时 Spring Cloud 体系已经演进到第二代,第一代的 Eureka 注册中心已经不大适合现在的业务逻辑和规模,同时它目前被 Spring Cloud 官方置于维护模式,将不再向前发展。如何选择一个更为优秀和适用的注册中心,这个课题就摆在了掌门人的面前。经过对 Alibaba

Spring cloud Alibaba整合Nacos配置中心

荒凉一梦 提交于 2020-08-13 07:14:57
pom配置: <!-- nacos配置中心 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> </dependency> <!--Spring Cloud Alibaba--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> yml配置: server: port: 8021 spring: application: name: product-server cloud: nacos: discovery: server-addr: 127.0.0.1:8848/ config: server-addr: localhost:8848 #配置中心地址 file-extension: yaml #指定yaml格式的配置 group: CLOUD-TEST profiles: active: dev 其中 nacos配置规则如下: ${prefix}

Spring Cloud Alibaba

浪尽此生 提交于 2020-08-13 02:21:40
在过去的十年中,互联网在中国得到了快速发展,越来越多的人在日常生活中偏爱在线购物和社交媒体。作为分布式应用程序开发的一站式解决方案,Spring Cloud Alibaba 帮助数以千计的 Internet 和 IoT 企业承载巨大的网络流量并快速构建Cloud-Native 应用程序。 Spring Cloud Alibaba 还是 Spring Cloud 的开源子项目,它基于强大而出色的组件,重新定义了分布式配置管理,自动服务注册和发现,断路器,运行时流量路由,高扩展性以及可视化服务治理。 那为什么 Spring Cloud 会成为 Java 云原生的主流框架? Spring Cloud Alibaba 相较于 Spring Cloud 原生框架具备哪些优势? Spring Cloud Alibaba 是怎么为用户提供一站式的元原生解决方案? 6月4日(周四)14:00 Apache Dubbo PMC 小马哥(马昕曦),讲解《Spring Cloud Alibaba - 重新定义 Java Cloud-Native 》。 欢迎大家钉钉扫描二维码,加入直播群内免费看直播! 来源: oschina 链接: https://my.oschina.net/u/4301555/blog/4300163

【SpringCloud】Spring Cloud Alibaba 之 Sentinel流量控制(三十)

江枫思渺然 提交于 2020-08-12 14:01:52
  本章介绍Sentinel流量控制,与对Sentinel的基本概念,请参考 【SpringCloud】Spring Cloud Alibaba 之 Sentinel哨兵介绍入门(二十九) Sentinel流量控制介绍   流量控制(flow control),其原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。   FlowSlot 会根据预设的规则,结合前面 NodeSelectorSlot 、 ClusterNodeBuilderSlot 、 StatisticSlot 统计出来的实时信息进行流量控制。   限流的直接表现是在执行 Entry nodeA = SphU.entry(resourceName) 的时候抛出 FlowException 异常。 FlowException 是 BlockException 的子类,您可以捕捉 BlockException 来自定义被限流之后的处理逻辑。   同一个资源可以创建多条限流规则。 FlowSlot 会对该资源的所有限流规则依次遍历,直到有规则触发限流或者所有规则遍历完毕。   一条限流规则主要由下面几个因素组成,我们可以组合这些元素来实现不同的限流效果: resource :资源名,即限流规则的作用对象 count : 限流阈值

Spring Cloud Alibaba 整合gateway

北慕城南 提交于 2020-08-12 06:53:09
pom配置 <dependencies> <!--gateway--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> <!--Spring Cloud Alibaba--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency>

Alibaba Cloud Native Day | 5 月 30 日杭州场线上直播

两盒软妹~` 提交于 2020-08-12 03:05:11
Alibaba Cloud Native Day 第二期将于 5 月 30 日全天进行线上直播! 届时,上海越光医疗科技 CTO、原编程之夏学员现 Alibaba Nacos PMC 及五位阿里技术专家齐聚,带来不一样的技术实践视角!通过本场活动,您将了解到: 真实的行业实践:ECI+K8s 在医疗行业的落地; 一线的演进视野:云原生时代消息中间件的演进路线,以及云原生软件供应链安全演进; 第一视角的实操演示:1. 聚焦 Nacos 内核构建;2. 基于 OAM 构建大规模可扩展 PaaS 平台实践;3. Spring Cloud Alibaba 的手把手沙箱试用;4. Serverless 在大规模数据处理的实践。 时间 :5 月 30 日 10:00 - 16:50 地点 :线上直播 报名方式 : https://yqh.aliyun.com/live/CloudNative(点击链接,立即预约直播 ) 【详细信息看这里】 来源: oschina 链接: https://my.oschina.net/u/4279029/blog/4288394