3-SpringCloudAlibaba discovery服务注册
1. 说明discovery意为发现,也就是我们的服务注册,这和spring-cloud的思想保持一致,spring-cloud-alibaba和spring-cloud-netflix均是相同的实现 2. 项目搭建2.1. pom12345678910<dependencies> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> ...
1-sentinel开篇
1. 序言Sentinel组件主要是做熔断降级,限流使用的,可以作用域于微服务调用层,也可以作用域web入口层用于限流 由于官网专门给出了概念页,文章后续全部引用至官网 官方文档 1.1. Sentinel 基本概念1.1.1. 资源资源是 Sentinel 的关键概念。它可以是 Java 应用程序中的任何内容,例如,由 应用程序提供的服务 ,或由应用程序调用的 其它应用提供的服务 ,甚至可以是 一段代码 。在接下来的文档中,我们都会用资源来描述代码块。 只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下,可以使用方法签名,URL,甚至服务名称作为资源名来标示资源。 1.1.2. 规则围绕资源的实时状态设定的规则,可以包括流量控制规则、熔断降级规则以及系统保护规则。所有规则可以动态实时调整。 1.2. Sentinel 功能和设计理念1.2.1....
SpringCloudAlibaba官方文档
1. Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。 此外,阿里云同时还提供了 Spring Cloud Alibaba 企业版 微服务解决方案,包括无侵入服务治理(全链路灰度,无损上下线,离群实例摘除等),企业级 Nacos 注册配置中心和企业级云原生网关等众多产品。 参考文档 请查看 WIKI 。 为 Spring Cloud Alibaba 贡献代码请参考 如何贡献 。 1.1. 主要功能 服务限流降级:默认支持 WebServlet、WebFlux、OpenFeign、RestTemplate、Spring Cloud Gateway、Dubbo 和 RocketMQ...
2-SpringCloudAlibaba config配置
1. 说明由前面我们已经知道了,nacos的职责由config和discovery,现在我们首先分析config 由于是配置信息,并非应用的信息,因此需要比原来application.properties更早的加载,就需要引入bootstrap.properties当读取完bootstrap.properties中的配置的nacos的相关信息时,会去nacos中找到对应的dataId对应的配置文件,此文件等效于application.properties文件,读取之后会加入Enviroment中,也就是读取到了内存里面,后续解析时便可以从Enviroment中获取数据了 2. 工程搭建2.1. pom依赖12345678<dependency> <groupId>com.alibaba.cloud</groupId> ...
1-SpringCloudAlibaba开篇
1. 官方文档cloud config discovery 版本对比说明 同时,官方也表明了比较明确了, 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现。 2. SpringCloudAlibaba 版本说明及选择alibaba 版本必须要与springcloud版本对应关系保持一致,否则会出现许多未知问题,所以选择的时候要注意匹配关系。官方整理的如下图,也可以见官网版本对比说明 这里建议选择 alibaba spring cloud springboot 2.2.6.RELEASE Spring Cloud...
5-spring中nacos作为配置中心和服务发现
1. 项目搭建1.1. 引入依赖1234567891011<dependency> <groupId>com.alibaba.nacos</groupId> <artifactId>nacos-spring-context</artifactId> <version>0.2.2-RC1</version></dependency><!--方便测试用--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId></dependency> 1.2. 启动类启动类和普通的springboot启动类配置一样就行了 123456@SpringBootApplicationpublic class...
4-nacos配置@ConfigurationProperties值为空分析
1. 问题由来nacos的属性注入的思路和spirng的属性注入是相似的,因此在分析使用nacos的时候按照spring的对应注解用法使用,其对应关系为: nacos spring @NacosPropertySource @PropertySource @NacosConfigurationProperties @ConfigurationProperties @NacosValue @Value 因此按照配置如下配置工程 nacos中配置 项目依赖 12345<dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-config-spring-boot-starter</artifactId> <version>0.2.10</version></dependency> 启动类 12345678@SpringBootApplication//...
3-nacos作为配置中心
1. 依赖引入nacos既有服务注册与发现功能,也有配置功能,在spring boot下分别有两个依赖 123456789101112<!--主要从nacos中获取配置--><dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-config-spring-boot-starter</artifactId> <version>0.2.10</version></dependency><!--主要负责服务注册与发现--><dependency> <groupId>com.alibaba.boot</groupId> <artifactId>nacos-discovery-spring-boot-starter</artifactId> ...
2-Nacos服务器搭建
1. 下载Nacos本文用的推荐的版本2.1.1 文档地址 Nacos可以在github上下载,下载地址也可以自己拉代码打包nacos 测试我选择用windows本地启动,直接选择了方便的方式下载的压缩包,然后解压,得到压缩包 其中,bin下是启停脚本。 2. 部署 部署前可以先修改conf/application.properties配置文件,根据自己的需要修改,注意官网说到nacos.core.auth.plugin.nacos.token.secret.key=这个值以后版本需要强制自定义,否则会报错 然后执行bin/statrtup.cmd -m standalone,linux执行bin/startup.sh -m standalone启动。这里启动的是单体应用,没有配置nacos集群,后续配置 部署完成,浏览器输入localhost:8848/nacos,默认跳转登录界面 nacos的默认账号密码是nacos/nacos,可以在application.properties中修改。 登录完成后进入主页面 3....