前言   近年SpringCloud与SpringBoot更新迭代非常频繁,导致我们对两者的版本选型非常的困难.若是版本选择有问题, 会导致开发中调试兼容性占用非常多的得必要时间. SpringCloud版本介绍   Spring Cloud是一个由众多独立子项目组成的大型综合项目,每个子项目有不同的发行节奏,都维护着自己的发布版本号.Spring Cloud通过一个资源清单BOM(Bill of Materials)来管理每个版本的子项目清单.为避免与子项目的发布号混淆,所以没有采用版本号的方…
还是熟悉的面孔,还是熟悉的味道,不同的是,这次的配方升级了. 今年10月底,Spring Cloud联合创始人Spencer Gibb在Spring官网的博客页面宣布:阿里巴巴开源 Spring Cloud Alibaba,并发布了首个预览版本.随后,Spring Cloud 官方Twitter也发布了此消息.- 传送门 时隔 51天,Spencer Gibb再次在Spring官网的博客页面宣布:Spring Cloud Alibaba发布了其开源后的第二个版本0.2.1,随后,Spring C…
1.什么是Nacos Nacos的官网对这一问题进行了详细的介绍,通俗的来说: Nacos是一个服务发现组件,同时也是一个配置服务器,它解决了两个问题: 1.服务A如何发现服务B 2.管理微服务的配置 2.搭建Nacos Server 2.1  环境准备 Nacos依靠java环境运行,搭建Nacos Server,需要配置maven环境,版本环境要求如下: 1.64 bit OS,支持 Linux/Unix/Mac/Windows,推荐选用 Linux/Unix/Mac 2.64 bit JD…
一.Nacos 下载与初始化配置 本文使用1.2.0,下载地址:https://github.com/alibaba/nacos/releases Nacos 单机模式支持持久化配置到 MySQL 数据库,修改 conf/application.properties 配置: spring.datasource.platform=mysql db.num=1 db.url.0=jdbc:mysql://数据库地址:端口/数据库名?characterEncoding=utf8&connectTime…
大家好,DD又来了! 3月9日,Spring官方博客发文:Spring Cloud Alibaba 2021.0.1.0发布了. 前段时间DD还在微信群里看到小伙伴吐槽Spring Cloud Alibaba更新太慢了.大概官方人员看到了?这不,最新版本来了! 这次发布的Spring Cloud Alibaba 2021.0.1.0版本基于Spring Boot 2.6.3和Spring Cloud 2021.0.1.要升级的小伙伴一定注意这个版本基线! 突然发现,官博这里还烦了个小错误,把Sp…
? 小马哥 & Josh Long ? 喜欢写一首诗一般的代码,更喜欢和你共同 code review,英雄的相惜,犹如时间沉淀下来的对话,历久方弥新. 相见如故,@杭州. 4 月 18 日,Josh Long 来到了阿里巴巴西溪园区,我们向其演示了 Spring Cloud Alibaba 各个组件的功能和实现方式,Josh Long 看完意犹未尽,表示会在新的 Spring Tips 视频再次介绍 Spring Cloud Alibaba 中的其他组件.(点击文末阅读原文,访问上一期spri…
前言 本文的核心目的: 1.方便自己以后的查找,预览,参考 2.帮助那些不知道如何选择版本的朋友进行指引,而不是一味的跟风网上的版本,照抄. Spring Boot 版本 版本查询: https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies 如何选择版本: 如果说你的项目只用到 Spring Boot 那么可以直接选择最新的稳定版,如上图的 2.1.7.RELEASE,RELEASE…
这篇博文是临时增加出来的内容,主要是由于最近连载<Spring Cloud Alibaba基础教程>系列的时候,碰到读者咨询的大量问题中存在一个比较普遍的问题:版本的选择.其实这类问题,在之前写Spring Cloud基础教程的时候,就已经发过一篇<聊聊Spring Cloud版本的那些事儿>,来说明Spring Boot和Spring Cloud版本之间的关系. Spring Cloud Alibaba现阶段版本的特殊性 现在的Spring Cloud Alibaba由于没有纳入…
sentinel除了让服务提供方.消费方用之外,网关也能用它来限流.我们基于上次整的网关(参见0.9.0.RELEASE版本的spring cloud alibaba nacos+gateway网关实例)来看下怎么弄.只需动其中的两板斧: 1.pom引入sentinel适配器: <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-spring-cloud-gateway-a…
gateway就是用来替换zuul的,功能都差不多,我们看下它怎么来跟nacos一起玩.老套路,三板斧: 1.pom: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xs…
既然用到了feign,那么主要是针对服务消费方的降级处理.我们基于0.9.0.RELEASE版本的spring cloud alibaba nacos+feign实例添油加醋,把sentinel功能加上去: 1.pom引入sentinel依赖: <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel&…
先看服务提供方的,我们在原来的sentinel实例(参见0.9.0.RELEASE版本的spring cloud alibaba sentinel实例)上加上限流.降级处理,三板斧只需在最后那一斧controller类中做如下修改: @Slf4j @RestController static class TestController { @Autowired private TestService testService; @GetMapping("/hello") public St…
sentinel即哨兵,相比hystrix断路器而言,它的功能更丰富.hystrix仅支持熔断,当服务消费方调用提供方发现异常后,进入熔断:sentinel不仅支持异常熔断,也支持响应超时熔断,另外还支持限流,以及针对网关的熔断和限流.此外,它还有过载处理.监控控制台(Sentinel Dashboard)等.hystrix作为组件集成到微服务中,sentinel也是如此,但它的控制台需要独立部署. 先下载Sentinel Dashboard(下载地址https://github.com/ali…
这里的feign依然是原来的feign,只不过将注册中心由eureka换成了nacos.服务提供方参见0.9.0.RELEASE版本的spring cloud alibaba nacos实例,消费方跟提供方一样,只需加入feign的相关内容即可.抡出三板斧: 1.pom加入feign: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.or…
简而言之,nacos与eureka的不同之处有三:后台老板.部署方式.功能.nacos是阿里的,eureka是奈飞的:nacos有自己的安装包,需要独立部署,eureka仅作为一个服务组件,引入jar包即可:nacos=eureka+config,它既是注册中心,也是配置中心. 如何使用nacos?先下载安装包(下载地址https://github.com/alibaba/nacos/releases),打开下载页 -> 点击目前最新版本1.1.3跳到下载页 -> 点击压缩包 -> 下载…
昨晚Nacos社区发布了第一个生产级版本:0.8.0.由于该版本除了Bug修复之外,还提供了几个生产管理非常重要的特性,所以觉得还是有必要写一篇讲讲这次升级,在后续的文章中也都将以0.8.0版本为基础. 升级的理由 如Nacos官方的发布文档中描述的那样,本版本将支持非常重要的三个特性: 第一,用户登录.在过去版本的Nacos中,用户是可以直接访问Nacos的页面的,我们需要通过网络或者代理手段来增加这样的安全性控制,在该版本后就不需要了. 第二:Prometheus的支持.对于一个基础中间件来…
alibaba 版本问题 一下是Spring cloud ,Spring Cloud Alibaba, Spring Boot 之间的版本选择 在版本选择上大家尽量选择稳定版,也就是Release 后的3 到4个版本,这个版本是趋于稳定的版本 版本对比的官方文档 毕业版本依赖关系(推荐使用) 版本选择尽量按照官方给的文档来做 否则会出现不兼容的情况,大家谨慎选择…
Nacos持久化Mysql8.0版本 有关Nacos之前写过三篇文章. Spring Cloud Alibaba(3)---Nacos概述 Spring Cloud Alibaba(4)---Nacos(注册中心) Spring Cloud Alibaba(5)---Nacos(配置中心) 一.背景 我们服务的信息.配置的信息都放在哪的?官网有说过 当我们使用默认配置启动Nacos时,所有配置文件都被Nacos保存在了内置的数据库中. 这里所指的内置数据库其实就是内存中,既然是配置在内存中,那么…
Spring Boot Spring Cloud Spring Cloud Alibaba 2.1.x Greenwich 0.9.x 2.0.x Finchley 0.2.x 1.5.x Edgware 0.1.x 1.5.x Dalston 0.1.x…
目录 Spring Cloud Alibaba | 序言 1. Spring Cloud Alibaba是什么? 2. 主要功能 3. 组件 4. 版本说明 4.1 版本依赖关系 4.2 组件版本关系 4.3 依赖管理 Spring Cloud Alibaba | 序言 @ 1. Spring Cloud Alibaba是什么? Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程…
目录 Spring Cloud Alibaba | Nacos服务中心初探 1. 什么是Nacos? 1.1 Nacos 1.0 1.2 Nacos 2.0 2. Nacos 架构及概念 2.1 服务 (Service) 2.2 服务注册中心 (Service Registry) 2.3 服务元数据 (Service Metadata) 2.4 服务提供方 (Service Provider) 2.5 服务消费方 (Service Consumer) 2.6 配置 (Configuration)…
目录 Spring Cloud Alibaba | Nacos服务注册与发现 1. 服务提供者 1.1 pom.xml项目依赖 1.2 配置文件application.yml 1.3 启动类ProducerApplication.java 1.4 controller 1.5 测试 2. 服务消费者 2.1 pom.xml项目依赖 2.2 配置文件application.yml 2.3 启动类NacosCosumersApplication.java 2.4 Feign远程调用 2.5 web层…
目录 Spring Cloud Alibaba | Nacos配置管理 1. pom.xml 项目依赖 2. 在 bootstrap.properties 中配置 Nacos server 的地址和应用名 3. 通过 Spring Cloud 原生注解 @RefreshScope 实现配置自动更新: 4. 测试 Spring Cloud Alibaba | Nacos配置管理 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR1 如无特殊说明,…
目录 Spring Cloud Alibaba | Nacos集群部署 1. Nacos支持三种部署模式 2. 集群模式下部署Nacos 2.1 架构图 2.2 下载源码或者安装包 2.3 配置集群配置文件 2.4 配置 MySQL 数据库 2.5 启动服务 3. SpringCloud集成 Spring Cloud Alibaba | Nacos集群部署 1. Nacos支持三种部署模式 单机模式 - 用于测试和单机试用. 集群模式 - 用于生产环境,确保高可用. 多集群模式 - 用于多数据中…
目录 Spring Cloud Alibaba | Sentinel: 分布式系统的流量防卫兵初探 1. Sentinel 是什么? 2. Sentinel 的特征: 3. Sentinel 的开源生态: 4. 简单使用 4.1 项目依赖pom.xml 4.2 定义资源 4.3 定义规则 4.4 Demo运行 Spring Cloud Alibaba | Sentinel: 分布式系统的流量防卫兵初探 Springboot: 2.1.6.RELEASE SpringCloud: Greenwic…
目录 Spring Cloud Alibaba | Sentinel: 服务限流基础篇 1. 简介 2. 定义资源 2.1 主流框架的默认适配 2.2 抛出异常的方式定义资源 2.3 返回布尔值方式定义资源 2.4 注解方式定义资源 2.5 异步调用支持 3. 规则的种类 3.1 流量控制规则 (FlowRule) 3.2 熔断降级规则 (DegradeRule) 3.3 系统保护规则 (SystemRule) 3.4 访问控制规则 (AuthorityRule) Spring Cloud Al…
目录 Spring Cloud Alibaba | Sentinel: 服务限流高级篇 1. 熔断降级 1.1 降级策略 2. 热点参数限流 2.1 项目依赖 2.2 热点参数规则 3. 系统自适应限流 3.1 背景 3.2 系统规则 3.3 原理 3.4 示例 4. 黑白名单控制 4.1 规则配置 4.2 示例 Spring Cloud Alibaba | Sentinel: 服务限流高级篇 Springboot: 2.1.6.RELEASE SpringCloud: Greenwich.SR…
Spring Cloud Alibaba | Gateway基于Nacos动态网关路由 本篇实战所使用Spring有关版本: SpringBoot:2.1.7.RELEASE Spring Cloud:Greenwich.SR2 Spring CLoud Alibaba:2.1.0.RELEASE 前面几篇文章我们介绍了<Nacos服务注册与发现>和<Nacos配置管理>,还没看过的小伙伴们快去看一下,本篇文章是建立在这两篇文章基础上的一次实战. 背景介绍 在Spring Clou…
Spring Cloud Alibaba | 微服务分布式事务之Seata 本篇实战所使用Spring有关版本: SpringBoot:2.1.7.RELEASE Spring Cloud:Greenwich.SR2 Spring CLoud Alibaba:2.1.0.RELEASE 1. 概述 在构建微服务的过程中,不管是使用什么框架.组件来构建,都绕不开一个问题,跨服务的业务操作如何保持数据一致性. 2. 什么是分布式事务? 首先,设想一个传统的单体应用,无论多少内部调用,最后终归是在同一…
Spring Cloud Alibaba | Sentinel:分布式系统的流量防卫兵基础实战 Springboot: 2.1.8.RELEASE SpringCloud: Greenwich.SR2 1. Sentinel控制台概述 在介绍入门实战之前,先来介绍一下Sentinel.Sentinel控制台提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理.监控(单机和集群),规则管理和推送的功能. Sentinel控制台主要功能: 查看机器列表以及健康情况:收集 Sentinel 客户…