Spring Cloud Alibaba

Spring Cloud Alibaba基础教程:Nacos配置的多文件加载与共享配置

馋奶兔 提交于 2019-11-29 23:16:28
前情回顾: 《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》 《Spring Cloud Alibaba基础教程:支持的几种服务消费方式》 《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》 《Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解》 《Spring Cloud Alibaba基础教程:Nacos配置的多环境管理》 对于Nacos作为配置中心的使用,通过之前的几篇博文,我们已经介绍了如何在Nacos中创建配置内容、Nacos配置内容与Spring应用配置之间的对应关系以及实战中多环境下的配置管理方案。 但是,我们实际应用过程中还会经常碰到这样的问题:有时候我们会对应用的配置根据具体作用做一些拆分,存储在不同的配置文件中,除了归类不同的配置之外,也可以便于共享配置给不同的应用。对于这样的需求,Nacos也可以很好的支持,下面就来具体介绍一下,当使用Nacos时,我们如何加载多个配置,以及如何共享配置。 加载多个配置 通过之前的学习,我们已经知道Spring应用对Nacos中配置内容的对应关系是通过下面三个参数控制的: spring.cloud.nacos.config.prefix spring.cloud.nacos.config.file-extension spring

Spring Cloud Alibaba 实战(二) - 关于Spring Boot你不可不知道的实情

↘锁芯ラ 提交于 2019-11-29 22:39:16
0 相关源码 1 什么是Spring Boot 一个快速开发的脚手架 作用 快速创建独立的、生产级的基于Spring的应用程序 特性 无需部署WAR文件 提供starter简化配置 尽可能自动配置Spring以及第三方库 提供“生产就绪”功能,例如指标、健康检查、外部配置等 无代码生成&无XML 2 编写一个Spring Boot应用 2.1 需求 整合Spring MVC /test路径(端点) 2.2 使用Spring Initializr快速创建Spring Boot应用 编写测试代码 运行输出 也可以使用 mvn clean install确保打包成功 java -jar 运行程序 3 组成分析 pom.xml 配置文件 static目录 存放静态文件 template目录 存放模板文件,已过时 4 开发利器 添加依赖 pom.xml中的依赖实例 官方支持依赖列表 写注解 写配置 5 Spring Boot Actuator 什么是Spring Boot Actuator 整合 添加依赖 启动应用 打开链接 健康信息 健康信息可以检查应用的运行状态,它经常被监控软件用来提醒人们生产环境是否存在问题。health端点暴露的默认信息取决于端点是如何被访问的。对于一个非安全,未认证的连接只返回一个简单的'status'信息。对于一个安全或认证过的连接其他详细信息也会展示

Spring Cloud Alibaba基础教程:Sentinel使用Apollo存储规则

隐身守侯 提交于 2019-11-29 14:21:50
上一篇 我们介绍了如何通过Nacos的配置功能来存储限流规则。Apollo是国内用户非常多的配置中心,所以,今天我们继续说说Spring Cloud Alibaba Sentinel中如何将流控规则存储在Apollo中。 使用Apollo存储限流规则 Sentinel自身就支持了多种不同的数据源来持久化规则配置,目前包括以下几种方式: 文件配置 Nacos配置 ZooKeeper配置 Apollo配置 本文我们就来一起动手尝试一下,如何使用Apollo来存储限流规则。 准备工作 下面我们将同时使用到 Apollo 和 Sentinel Dashboard ,所以可以先把 Apollo 和 Sentinel Dashboard 启动起来。 如果还没入门 Sentinel Dashboard 可以通过文末的系列目录先学习之前的内容。Apollo的话相对复杂一些,这里不做详细介绍了,如果还没有接触过Apollo的读者可以查看其 官方文档 进一步学习。 应用配置 第一步 :在Spring Cloud应用的 pom.xml 中引入Spring Cloud Alibaba的Sentinel模块和Apollo存储扩展: <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId

Spring 社区的唯一一个国产开源项目 - Spring Cloud Alibaba 毕业了

断了今生、忘了曾经 提交于 2019-11-29 07:28:36
阿里妹导读 :一年多前,Java 界最近发生了一件大事,阿里开源 Spring Cloud Alibaba,并推出首个预览版。Spring Cloud 本身是一套微服务规范,并不是一个拿来即可用的框架,而 Spring Cloud Alibaba 的开源为开发者们提供了这套规范的实现方式。同时,Spring Cloud Alibaba 提供的完整的微服务组件、中文文档和本地化的开源服务提高了开发者们接入微服务的速率,并降低了后续的运维难度。 经过一年多的孵化,Spring Cloud Alibaba 作为 Spring 社区的唯一一个国产开源项目,正式从 Spring Cloud Incubator 孵化器毕业,并发布了适配 Spring Cloud Edgware、Finchley、Greenwich 三个版本的新版本。 Spring Cloud Alibaba 是 Spring 社区第一个也是唯一一个国产开源项目。 (官方毕业公告参考 Spring Blog: https://spring.io/blog/2019/07/24/simplifying-the-spring-cloud-release-train) Spring Cloud Alibaba 毕业后从孵化器仓库迁移到了 Github Alibaba 仓库下,新的仓库地址点击 这里 。 新的 maven 坐标如下:

Spring Cloud Alibaba基础教程:Nacos配置的加载规则详解

我们两清 提交于 2019-11-28 23:04:10
前情回顾: 《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》 《Spring Cloud Alibaba基础教程:支持的几种服务消费方式(RestTemplate、WebClient、Feign)》 《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》 上一篇,我们学习了如何在Nacos中创建配置,以及如何使用Spring Cloud Alibaba的Nacos客户端模块来加载配置。在入门例子中,我们只配置了Nacos的地址信息,没有配置任何其他与配置加载相关的其他内容。所以,接下来准备分几篇说说大家问的比较多的一些实际使用的问题或疑问。 加载规则 在 《Spring Cloud Alibaba基础教程:使用Nacos作为配置中心》 一文中,我们的例子完全采用了默认配置完成。所以,一起来看看Spring Cloud Alibaba Nacos模块默认情况下是如何加载配置信息的。 首先,回顾一下,我们在入门例子中,Nacos中创建的配置内容是这样的: Data ID :alibaba-nacos-config-client.properties Group :DEFAULT_GROUP 拆解一下,主要有三个元素,它们与具体应用的配置内容对应关系如下: Data ID中的 alibaba-nacos-config

Spring Cloud Alibaba系列教程-03-搭建生产可用的Nacos集群

∥☆過路亽.° 提交于 2019-11-28 15:09:53
Spring Cloud Alibaba系列教程-01-Nacos安装与启停 一节, 已搭建一个单实例Nacos——它使用内嵌数据库Derby,这显然不适用于生产。 本节详细探讨如何搭建一个生产可用的Nacos集群。讨论的内容主要包括:使用MySQL作为存储持久化数据,以及如何搭建Nacos集群。 安装MySQL数据库 生产环境需使用MySQL作为后端存储,因此需要搭建MySQL。生产中,MySQL建议至少主备模式,高可用MySQL更佳。 高可用MySQL的搭建可参考: https://blog.csdn.net/jx_jy/article/details/80165584 注意:Nacos支持的MySQL版本为:5.6.5+ 导入初始化脚本 找到 conf/nacos-mysql.sql ,将其导入到数据库中。 配置数据库连接 找到 conf/application.properties ,添加如下内容: # 表明用MySQL作为后端存储 spring.datasource.platform=mysql db.num=1 # MySQL JDBC地址 db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000

Spring Cloud Alibaba基础教程:使用Nacos作为配置中心

☆樱花仙子☆ 提交于 2019-11-27 16:37:47
通过本教程的前两篇: 《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》 《Spring Cloud Alibaba基础教程:支持的几种服务消费方式(RestTemplate、WebClient、Feign)》 我们已经学会了,如何利用Nacos实现服务的注册与发现。同时,也介绍了在Spring Cloud中,我们可以使用的几种不同编码风格的服务消费方式。接下来,我们再来一起学习一下Nacos的另外一个重要能力:配置管理。 简介 Nacos除了实现了服务的注册发现之外,还将配置中心功能整合在了一起。通过Nacos的配置管理功能,我们可以将整个架构体系内的所有配置都集中在Nacos中存储。这样做的好处,在以往的教程中介绍Spring Cloud Config时也有提到,主要有以下几点: 分离的多环境配置,可以更灵活的管理权限,安全性更高 应用程序的打包更为纯粹,以实现一次打包,多处运行的特点( 《云原声应用的12要素》之一 ) Nacos的配置管理模型与淘宝开源的配置中心Diamond类似,基础层面都通过 DataId 和 Group 来定位配置内容,除此之外还增加了很多其他的管理功能。 快速入门 下面我们通过一个简单的例子来介绍如何在Nacos中创建配置内容以及如何在Spring Cloud应用中加载Nacos的配置信息。 创建配置 第一步

Spring Cloud Alibaba基础教程:支持的几种服务消费方式(RestTemplate、WebClient、Feign)

前提是你 提交于 2019-11-27 16:37:07
通过 《Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现》 一文的学习,我们已经学会如何使用Nacos来实现服务的注册与发现,同时也介绍如何通过LoadBalancerClient接口来获取某个服务的具体实例,并根据实例信息来发起服务接口消费请求。但是这样的做法需要我们手工的去编写服务选取、链接拼接等繁琐的工作,对于开发人员来说非常的不友好。所以接下来,我们再来看看除此之外,还支持哪些其他的服务消费方式。 使用RestTemplate 在之前的例子中,已经使用过 RestTemplate 来向服务的某个具体实例发起HTTP请求,但是具体的请求路径是通过拼接完成的,对于开发体验并不好。但是,实际上,在Spring Cloud中对RestTemplate做了增强,只需要稍加配置,就能简化之前的调用方式。 比如: @EnableDiscoveryClient @SpringBootApplication public class TestApplication { public static void main(String[] args) { SpringApplication.run(TestApplication.class, args); } @Slf4j @RestController static class TestController {

这个注解一次搞定限流与熔断降级:@SentinelResource

最后都变了- 提交于 2019-11-27 12:25:51
在之前的 《使用Sentinel实现接口限流》 一文中,我们仅依靠引入Spring Cloud Alibaba对Sentinel的整合封装 spring-cloud-starter-alibaba-sentinel ,就完成了对所有Spring MVC接口的限流控制。然而,在实际应用过程中,我们可能需要限流的层面不仅限于接口。可能对于某个方法的调用限流,对于某个外部资源的调用限流等都希望做到控制。呢么,这个时候我们就不得不手工定义需要限流的资源点,并配置相关的限流策略等内容了。 今天这篇我们就来一起学习一下,如何使用 @SentinelResource 注解灵活的定义控制资源以及如何配置控制策略。 自定义资源点 下面的例子基于您已经引入了Spring Cloud Alibaba Sentinel为基础,如果您还不会这些,建议优先阅读 《使用Sentinel实现接口限流》 。 第一步:在应用主类中增加注解支持的配置: @SpringBootApplication public class TestApplication { public static void main(String[] args) { SpringApplication.run(TestApplication.class, args); } // 注解支持的配置Bean @Bean public