随笔分类 - SpringCloud
摘要:开发中,如果项目的配置文件全部放到项目的application.yaml中,那么可能会有安全风险,而且也不方便修改配置。 本文记录,如何使用nacos作为配置中心使用。 一、下载并且启动nacos; 1、下载nacos: https://github.com/alibaba/nacos/releas
阅读全文
摘要:SkyWalking组件通过添加相关配置就可以获取到接口的相关信息,更加方便的追踪和处理问题 接下去讲下步骤: 1、在service层添加两个注解; @Trace @Tags({@Tag(key = "getDataByCode",value = "returnedObj"), @Tag(key =
阅读全文
摘要:在微服务多个服务调用过程中,随着服务数量增多,互相调用的变多,就会出现一些问题: 1、调用链路,如何快速定位问题 2、如果缕清微服务之间的依赖关系 3、各个微服务接口性能分析 4、整个业务流程的调用处理顺序 skywalking可以很好的处理这些问题,在springcloud微服务中如何整合skyw
阅读全文
摘要:gateway处理跨域问题,有两种方式,一种是配置文件,另外一种是代码 配置文件 spring: cloud: gateway: globalcors: cors-configurations: '[/**]': allowCredentials: true allowedMethods: "*"
阅读全文
摘要:全局过滤器是可以做一些统一的事情,比如认证鉴权、日志处理等 @Component public class LogFilter implements GlobalFilter, Ordered { Logger log = LoggerFactory.getLogger(this.getClass(
阅读全文
摘要:gateway作为第二代springcloud网关,是微服务架构中不可缺少的一部分,接下去就简单介绍下如何在springcloud中整合它 此处配合用到了nacos,将gateway服务注册到nacos统一管理 一、添加依赖: <dependency> <groupId>org.springfram
阅读全文
摘要:简单理解就是,同样请求一个接口的入参,针对该参数对应是规定值的数据请求,进行控制,比如我一个接口的一个参数为id,如果id值为1002、1003的入参进行热点控制,别的id值不控制随意请求。 采用的是sentinel进行热点数据控制 设置如下 这个热点设置,需要借助@SentinelResource
阅读全文
摘要:openfeign作为微服务各个模块之间调用的组件,如果服务提供方出现异常,会将错误返回给服务消费方,消费方可以通过sentinel的服务降级方法,对如果调用异常的情况进行处理 以下介绍下具体做法: 一、服务消费方必须整合openfeign,方法可以参考:https://www.cnblogs.co
阅读全文
摘要:限流在前、熔断在后 高并发系统三大手段:缓存、限流、熔断。 接下去简单介绍下如何利用sentinel的dashboard进行流控和熔断。 一、流控(服务提供方设置) 1、在簇点链路找到对应资源名,点击流控,选择QPS或者线程数,单位是 秒 ,设置单机阈值 流控:QPS:每秒访问数;线程数:也就是时间
阅读全文
摘要:限流在前、熔断在后 高并发系统三大手段:缓存、限流、熔断,而sentinel一个就占了后者两者,前者通常是用Redis 此处只做个简单的springcloud中添加sentinel的demo 1、下载sentinel的jar,访问网址:https://github.com/alibaba/Senti
阅读全文
摘要:openfeign超时时间设置有两种方式 1、通过配置类;2、通过配置文件 1、使用配置类代码如下: @Configuration public class FeignConfig { @Bean public Request.Options options(){ //第一个参数是连接超时时间,第二
阅读全文
摘要:在使用openfeign进行服务调用的时候,我们可以通过一些配置,获取到服务调用的日志输出,可以从消费端看到日志 有两种方法:一、使用配置类;二、使用配置文件配置 日志输出级别有四种: NONE:不输出(默认) BASIC:只输出请求方式、url、请求成功与否 HEADERS:输出请求头的部分信息等
阅读全文
摘要:ribbon的默认是第一次调用的时候,才会去初始化负载均衡策略,那这个可能的后果就是服务第一次请求的是,因为需要初始化,有可能会慢一点 那可以通过配置项目启动的时候,就进行初始化负载均衡策略,减少第一次请求时候的时间 只需要再消费端的模块中添加如下配置: ribbon: eager-load: #开
阅读全文
摘要:一、微服务负载均衡ribbon策略如下: 1、线性轮询策略: RoundRibbonRule 2、重试策略:RetryRule 3、加权响应时间策略:WeightedResponseTimeRule 4、随机策略:RandomRule 5、最空闲策略:BestAvailableRule 6、区域感知
阅读全文
摘要:springCloudalibaba微服务里面,通常我们作为流量洪峰控制是用sentinel,那nacos这里的保护阈值也简单了解下这个功能 默认是0,代表不启用,这里值通常为0-1,表示百分比 即一旦流量达到这个阈值,超出阈值部分的请求将不再分配给该服务,例:某个服务有3个实例,每个实例能承受10
阅读全文
摘要:关于springCloud整合nacos主要步骤如下(主要介绍nacos作为注册中心使用的配置) 1、添加依赖;2、添加配置;3、服务启动,查看注册信息 1、添加依赖: <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spr
阅读全文
摘要:本地idea如果同一个服务,想开多个服务,只需要改下端口重新启动,配置如下 1、打开idea的Services (老版本的idea应该是Run bashboard) 2、如图所示的两个stockApplication就是相同的服务,不同的端口 3、点击其中一个StockApplication8082
阅读全文
摘要:Seata 作为分布式事务解决方案,致力于提供高性能简单易用的分布式服务。Seata提供了AT、TCC、SAGA、XA事务模式,此处介绍的是AT模式。 传统的单体应用中,通常本地数据库(@Transactional)保证一致性和完整性,而分布式环境中,多个服务进行跨数据库操作,此时本地事务无法保证全
阅读全文
摘要:其实就是一个普通的类,然后定义几个static静态方法,这样就直接调用该类的static方法。 package org.ongoal.common; import lombok.Data; import lombok.experimental.Accessors; import lombok.ext
阅读全文
摘要:1、idea创建项目 2、创建完成后,将src文件删除,因为这个是父模块,只需要使用pomx.xml即可。pom.xml改造成如下 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4
阅读全文
浙公网安备 33010602011771号