java
文章平均质量分 83
aofengdaxia
码农。
展开
-
从ruoyi-gateway中学习sentinel的用法
sentinel中文的含义是哨兵,它是阿里开发的一个限流、降级和熔断的开源框架。作用等同于hystrix,但是sentinel更加强大,功能更加丰富。原创 2023-03-02 09:16:19 · 2050 阅读 · 0 评论 -
深入学习ErrorWebExceptionHandler
通过深入探究WebExceptionHandler的源码,从根本上了解如何自定义异常处理的handler原创 2023-02-28 17:21:28 · 3215 阅读 · 0 评论 -
reactor简单入门
reactor是一个基于reactive streams的响应式编程框架。在了解project reactor 项目之前, 你需要熟悉观察者模式(订阅发布模式)和reactive streams。只有了解了这些内容,才能更好的开始project reactor的学习。你可以通过看和了简单学习这两个知识点。原创 2023-02-10 18:39:02 · 1409 阅读 · 0 评论 -
reactor之操作符
为了方便对Flux/Mono的数据操作,减少自定义subscriber的代码量,reactor提供了操作符的概念,操作符可以对Flux/Mono的数据进行转换、过滤、合并等操作。操作符的很多名称和概念和java8的Stream API是类似的,比如map、filter、flatMap、reduce等。为了减少学习操作符的成本,建议大家先学习java8的Stream API,然后再学习reactor的操作符。原创 2023-02-08 11:27:53 · 2101 阅读 · 0 评论 -
一篇搞懂Spring Cloud Gateway(从入门到放弃)
当你理解了断言的意图及配置方式后,使用断言就变得非常简单。一些常用的内置的断言工厂,你可以通过官网去学习他们的使用方法。官网地址return 0;} }在实际的使用中可以根据自己的业务需求去使用或者组合使用合适的过滤器。return 0;} }} }Spring Cloud Gateway在微服务中使用相当的简单方便。大多数使用,我们只需要配置Spring Cloud Gateway连接到注册中心,然后配置路由规则即可。原创 2023-02-07 18:59:55 · 961 阅读 · 0 评论 -
reactor之数据源的产生
Flux和Mono作为数据源,产生数据的方法有好多种,本文中对常用的进行罗列和简述。不足的地方可以去源文档中查看。原创 2023-02-06 18:30:51 · 608 阅读 · 0 评论 -
一篇入门reactive streams背压响应流编程
react streams是一种背压响应式编程规范,它通过一组最小的接口,方法和协议,使得异步的流式编程相对规范统一。其中jdk9中的reactive stream就是react streams的java实现。原创 2023-01-30 16:39:34 · 918 阅读 · 0 评论 -
观察者模式之我的理解
用自己的语言描述观察者模式方便理解。原创 2023-01-29 11:48:42 · 413 阅读 · 0 评论 -
build-helper-maven-plugin 简单讲解
简介官方文档https://www.mojohaus.org/build-helper-maven-plugin/index.html常用的Goals名称说明build-helper:add-source添加一个或者多个目录到POM.build-helper:add-test-source添加测试目录到 POM.build-helper:add-resource添加资源目录到POM.build-helper:add-test-resource添加测试资源原创 2022-02-10 11:19:42 · 5113 阅读 · 1 评论 -
Dependencies与DepencyManagement的区别
在maven的项目中经常遇到dependencies与dependencyManagement。那么两者有什么区别和联系呢?DepencyManagement的应用场景主要应用于多module项目中,有多个子项目共同依赖于某一个jar包。确保这个jar包的版本一致非常有必要。特别是某个包升级以后,不需要在所有的用到的子项目中一一的去修改dependency的version版本号。我们只需要在父项目中DepencyManagement中添加该依赖jar包的maven坐标和版本号。在子项目中的depende原创 2022-02-07 14:21:06 · 1225 阅读 · 0 评论 -
maven中profiles使用详解
使用的场景常常遇到一些项目中多环境切换的问题。比如在开发过程中用到开发环境,在测试中使用测试环境,在生产中用生产环境的情况。springboot中提供了 spring.profile.active的方式来实现多环境的切换,通过设置环境变量和启动参数的方式。但是这样做终究不能一劳永逸,要么需要修改yml文件,要么需要记得启动的时候带上参数。而利用maven的profiles,可以减少很多工作。让我们通过几个例子一步步的掌握使用maven的profiles属性。快速上手pom.xml文件设置<pr原创 2022-02-06 10:36:35 · 16593 阅读 · 2 评论 -
springcloud中openfeign止hystrix的几个问题
最近写一个小项目,使用了微服务的架构,当然就少不了openfeign和hystrix。在使用过程中可谓是问题频频,而且遇到问题不好解决。新版本的hystrix不起作用首先是在使用openfeign的过程中发现fallback不起作用。左思右想,查了各种资料,大多数材料都是说openfeign默认不开启hystrix。需要设置feign: hystrix: enabled: true但是设置后,依然不起作用。最后考虑到的可能是openfeign版本变化的问题,我使用的最新的3.0.3原创 2021-10-01 17:49:33 · 1161 阅读 · 0 评论 -
Feign的hystrix熔断器不起作用
问题描述在开发spring-cloud项目的时候,Feign的熔断器不起作用,指定了fallback不起作用。@FeignClient(name = "produce", fallback=ProduceCallback.class)public interface ProduceSevice { @RequestMapping("/index") String index();}@Componentpublic class ProduceCallback implements原创 2020-12-09 17:29:53 · 2376 阅读 · 3 评论 -
nacos、ribbon和feign的简明教程
nacos简明教程为什么需要nacos?在微服务架构中,微服务之间经常要相互通信和调用,而且一个服务往往存在多个实例来降低负荷或保证高可用。我们假定A服务要调用B服务,最简单的方式把B服务的地址和端口保存在A服务的配置文件中。然后通过http请求去完成B服务的调用。但是B服务可能有好多个实例,而且可能会随着业务的需求随时的扩展或者停用掉一些实例,这个时候B服务的地址和端口可能会经常发生改变。如果记录在配置文件就多有不便。而且在众多的B服务中,可能有一些服务会出现各种问题坏掉,我们可能还需要写一个心跳检测原创 2020-11-06 19:24:41 · 4061 阅读 · 1 评论