- 博客(62)
- 资源 (1)
- 收藏
- 关注

原创 SpringCloud Feign 全局Fallback实现【SpringBoot2.7+】
制作一个sarter实现 Feign 全局Fallback 断路器使用Resilience4J,默认情况开启断路器就启用全局fallback,可通过feign.circuitbreaker.globalfallbackenabled=true关闭全局fallback。直接上代码。
2022-12-22 21:12:59
2154
3

原创 SpringBoot2.7+ 动态数据数据源以及多数据源自动配置
内容包括动态数据源以及多数据源的自动配置包括jpa和mybatis,包含源码以及使用方法。动态数据源开关和jpa多数据源开关以及mybatis多数据源开关三者同时只能开启一个当三个开关都没开启时,默认会使用动态数据源模式jpa和mybatis的多数据源配置基本一样,引入不同的依赖就行了httpshttps。......
2022-08-19 18:25:17
3653

原创 解决springboot2.6版本以上使用默认的path_pattern路径匹配模式不兼容swagger问题
springboot2.6+使用默认path_pattern路径匹配模式不兼容swagger
2022-07-14 18:47:59
3857
2
原创 结构化布线系统分为六个子系统
结构化布线系统是一种用于现代建筑中的综合布线体系,通过标准化的设计和施工为各种通信和信息设备提供连接。它通常被划分为六个子系统,每个子系统都有特定的功能和用途。功能:负责终端设备(如计算机、电话、打印机等)与信息插座的连接。组成:信息插座(如RJ45接口)跳线或终端连接线特点:位于用户终端的物理区域内。提供灵活的设备接入点,便于设备的移动和更换。这些子系统共同组成了一个完整的结构化布线系统,各自承担不同的功能并相互协作。
2025-01-23 16:22:57
942
原创 RAG与GraphRAG的区别
RAG (Retrieval-Augmented Generation) 和 GraphRAG (Graph-Based Retrieval-Augmented Generation) 是两种用于生成增强型问答的技术,但它们的核心数据结构和适用场景有所不同。GraphRAG 的适用性强于 RAG 的场景多跳推理:涉及多个实体和关系时(如知识图谱、社交网络)。多条件约束:需要同时满足多个条件或属性筛选(如推荐系统)。复杂关系查询:需要显式路径推理的场景,避免生成模型逻辑混乱。建议。
2025-01-23 10:39:50
1120
原创 时序数据库的使用场景
时序数据库(Time Series Database, TSDB)是一种专门设计用于存储和处理时序数据的数据库。时序数据是指按照时间顺序排列的数据,其中每个数据点通常包含时间戳和与之关联的多个指标(例如温度、压力、股票价格等)时序数据库是针对时间序列数据量大、写入频繁、查询按时间范围等特点进行优化的数据库。它在物联网、监控、金融、能源、网络、健康等领域有广泛应用,适用于存储、查询和分析大量实时产生的时间相关数据。
2025-01-21 14:30:14
937
原创 Big-endian(大端字节序)与Little-endian(小端字节序)区别
BIG_ENDIAN 和 LITTLE_ENDIAN 是两种不同的字节序(Byte Order)表示方式,用于指定数据在内存中存储的顺序。字节序指的是多字节数据类型(如int, long, float等)在计算机内存中的存储顺序。Big-endian(大端字节序):最高有效字节(Most Significant Byte, MSB)存储在内存的低地址,最低有效字节(Least Significant Byte, LSB)存储在内存的高地址。Little-endian(小端字节序)
2025-01-17 15:25:48
861
原创 Rocksdb的原理及使用场景
高写入负载如果系统需要处理大量的写入操作并保持低延迟的响应,RocksDB是非常适合的选择。低延迟读取对于需要快速读取数据的系统,RocksDB可以提供低延迟的访问。大规模数据集当需要处理大规模数据集并进行高效索引和查询时,RocksDB能够提供良好的性能。嵌入式应用在需要嵌入式键值存储并具有持久化功能的场景下,RocksDB非常合适。
2025-01-17 10:53:39
1008
原创 Elasticsearch的function_score与rescore的区别
在 Elasticsearch 中,function_score 和 rescore 都是对查询结果进行评分调整的机制,但它们的用途、作用范围和执行阶段有所不同。function_score 更适合在查询阶段调整所有匹配文档的评分,用于基于字段或业务规则的动态评分调整。rescore 更适合在初步筛选后的精细排序,用于复杂的二次排序逻辑(例如短语匹配或基于机器学习的重新打分)。如果你需要动态调整所有文档的评分,使用 function_score。
2025-01-16 15:26:14
1142
原创 OpenID与oauth2.1有什么区别联系
OpenID和OAuth 2.1是两个不同但相关的协议,它们解决的需求和用途不同。OAuth 2.1谁在使用用户身份验证核心令牌ID Token(用户信息)构建目标验证身份使用关系基于 OAuth 2.0 扩展实际场景举例::用户通过 Google 登录你的应用,并获得用户的姓名和电子邮件。OAuth 2.1:你的应用请求访问用户的 Google Drive 文件,需要用户授权访问权限。
2025-01-14 16:18:59
719
原创 贪心、回溯、动态规划、分治算法的区别(附Java代码)
贪心、回溯、动态规划、分治算法都是常见的算法思想,主要区别在于它们解决问题的方式和适用的场景。
2025-01-10 15:06:50
920
原创 PKCE(Proof Key for Code Exchange)六大使用场景
PKCE 的主要使用场景单页应用(SPA)移动应用(Native App)桌面应用第三方应用集成安全增强(在可信客户端中)符合 OAuth2.1 新规范通过 PKCE,可以显著提升 OAuth 2.0 授权码模式的安全性,特别是在无法安全存储 client_secret 的客户端中,是必不可少的机制。
2025-01-10 10:20:13
1067
原创 ×(笛卡尔积)、⋈(自然连接/连接) 的区别
笛卡尔积(×)和自然连接(⋈)是两种不同的关系操作符,广泛用于数据库和关系代数中。特性笛卡尔积 (×)自然连接 (⋈)操作方式将两个表的每一行配对,返回所有组合结果根据相同列名的值匹配行,并合并重复列结果行数行数是两个表行数的乘积 (m * p)只有两个表中具有匹配列值的行才会被返回结果列数列数是两个表列数的总和 (n + q)去除重复列,只保留一个匹配列典型用途用于组合所有可能的行对,例如在数据生成或分析时用于基于共享列进行的表连接,例如联合查询效率。
2025-01-10 10:17:57
918
原创 SpringCloud Feign 全局Fallback的另一种实现方式(SpringBoot3.4+)
之前在SpringBoot2.7+中实现全局Fallback方式较为复杂,且是从Feign入手,现在从断路器入手,通过捕获异常方式实现。注意:这里基于SpringBoot3.4实现的,如果是2.7那么又会复杂一点,原因是内置的Resilience4JCircuitBreakerFactory实现的接口未返回接口CircuitBreaker而是实现Resilience4JCircuitBreaker,在3.4版本已修正为接口CircuitBreaker。
2025-01-08 18:08:26
472
原创 常用的排序算法(Java版)
排序算法有很多,这里列出最常用的一些,如选择排序、插入、冒泡等。稳定性:待排序数据中有相同的数,排序之后相同的数与排序前的前后位置关系不变,则成为稳定排序算法。比如我们有一组数据2,9,3,4,8,3;按照大小排序之后就是2,3,3,4,8,9;两个3的前后顺序在排序前后保持不变,即稳定。排序算法最佳时间复杂度平均时间复杂度最坏时间复杂度稳定性空间复杂度选择排序O(N^2)O(N^2)O(N^2)不稳定O(1)插入排序O(N)O(N^2)O(N^2)稳定O(1)
2025-01-08 17:15:03
614
原创 2024年华为OD E卷
输入两个正整数n,m,编号1~n围成一圈的人,从1开始报数,数到m,m就退出,当剩下的人少与m时停止报数,并按从小到大的顺序输出剩下的人在原来的位置的编号?输出:34,45,97。
2024-09-02 14:12:08
879
1
原创 Nginx的location路径与proxy_pass匹配规则
若proxy_pass代理地址端口后无任何字符,则转发后地址为:代理地址+访问的pathlocationproxy_pass代理路径/api//api//api/api若proxy_pass代理地址端口后有目录(包括"/"),则转发后地址为:代理地址+访问的path去除location匹配的路径locationproxy_pass代理路径/api//api//api/api。
2023-12-21 15:39:16
1740
原创 BIO NIO AIO之间的区别与联系
Unix系统下的五种基本I/O模型blocking I/O(同步阻塞IO,BIO)nonblocking I/O(同步非阻塞IO,NIO)I/O multiplexing (I/O多路复用)signal driven I/O(信号驱动I/O)asynchronous I/O(异步I/O,AIO)当一次网络IO发生时,主要涉及到三个对象:发起此次IO操作的Process或者Application系统内核kernel。
2023-06-05 12:19:43
1239
原创 分析connection reset by peer, socket write error错误原因
问题来源于一个http的文件上传接口,接口会先对一些参数签名进行校验,参数签名通过之后才会取出InputStream,将文件数据保存起来。如果参数校验失败或者检查到文件已经存在(参数上会带md5),则直接返回了错误信息。实际上大多数情况挺正常的,但是偶尔在客户端会出现“connection reset by peer, socket write error”。这个错误通过搜索引擎找了答案,都不能解释遇到的现象,只有尝试着猜测和重现了。
2023-05-23 10:30:04
2504
原创 redis的两种持久化方式
整个重写操作是绝对安全的,因为 Redis 在创建新 AOF 文件的过程中,会继续将命令追加到现有的 AOF 文件里面,即使重写过程中发生停机,现有的 AOF 文件也不会丢失。AOF 文件是一个只进行追加操作的日志文件(append only log), 因此对 AOF 文件的写入不需要进行 seek , 即使日志因为某些原因而包含了未写入完整的命令(比如写入时磁盘已满,写入中途停机,等等), redis-check-aof 工具也可以轻易地修复这种问题。为了压缩aof的持久化文件。所以,让缓存永不过期。
2023-05-23 10:16:22
408
原创 Spring Cloud Gateway使用及原理解析
随着人Zuul2的不断跳票,Spring官方推出高性能网关Spring Cloud Gateway,使用Netty通信,reactor反应式框架编程。本文就介绍了该网关的基础内容以及进阶使用。讲解版本3.1.4对应SpringCloud版本2021.0.5
2023-05-21 16:10:05
994
原创 解决springboot2.6版本以上使用老版oauth2授权服务和actuator不兼容swagger问题
设置WebMvcEndpointHandlerMapping使用ANT_PATH_MATCHER//不使用默认的PathPatternParser } return bean;} }
2023-04-27 11:34:24
469
原创 Spring BeanDefintion的注册方式
如果是static修饰的,则不需要在ExampleBean 例化时去实例化Config ,反之需要。触发条件:当解析的bean上存在ImportResource注解。触发条件:当解析的bean上存在@Bean注解的方法时。下面的代码就需要static修饰,否则会发生循环引用。触发条件:当解析的bean上存在Import注解。
2023-03-25 14:16:42
121
1
原创 MCN参考文档
MCN是一个基于SpringBoot和SpringCloud的一个快速构建JavaWeb系统的工具。MCN在SpringBoot的基础上提供更多的默认配置,如mybatis多数据源配置、跨域、编码等等一些SpringBoot没有的或者扩展的配置。SpringBoot其实不算是一个严格意义上的框架(Spring是)。框架从字面上理解就是"框住"你,即遵循框架制定的规则来写代码。而SpringBoot就是按照我们平时的开发习惯直接将配置配好,拿来即用。
2022-11-08 17:23:34
2032
原创 maven和git常用命令
而且,这些dependencies 会传递到依赖的项目中。普通模块或普通项目之间,依赖范围会正常生效。表示dependency作用在测试时,不作用在运行时。只在测试时使用,用于编译和运行测试代码。跟provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它。子模块会继承父模块所有依赖,无论父模块的依赖声明范围是什么(test,provided都不会起作用)。表示dependency不作用在编译时,但会作用在运行和测试时,如JDBC驱动,适用运行和测试阶段。..
2022-08-12 16:18:46
333
原创 SpringSecurity5 Oauth2.1与老版本OAuth2区别
SpringSecurity5 Oauth2.1与老版本OAuth2区别
2022-07-26 10:00:00
916
原创 Spring Boot 简介
Spring Boot 简介spring-boot-autoconfigure-x.x.x.x.jar该jar囊括了大多数流行的第三方技术框架,已经给我们配置好了一套默认配置spring boot默认读取application.properties配置文件二、运行原理核心注解@SpringBootApplication,而实际上它是有三个注解组成,分别是@Configuration、@.........
2022-07-23 17:16:50
497
1
原创 SpringBoot启动源码解析
一步一步分析SpringBoot启动源码(一) 一步一步分析SpringBoot启动源码(二) 一步一步分析SpringBoot启动源码(三)
2018-07-29 15:54:59
3426
1
颜色拾取器颜色拾取器颜色拾取器
2017-11-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人