自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 线上Bug记录:Seata回滚失败排查

摘要:线上审批流回滚失败,排查发现erp_order_refuse表的create_time字段被误设为"根据时间戳更新"。该字段在更新时被不规范代码连带修改,而下游服务仅按需更新部分字段,导致seata回滚时因数据库自动更新时间戳而产生脏数据。最终取消该字段的自动更新设置后问题解决。根本原因在于:1)不规范代码连带修改基础字段;2)下游服务部分更新逻辑与数据库自动更新机制冲突;3)线上环境配置被误改。(149字)

2025-10-21 14:27:16 172

原创 突破大模型Prompt上下文限制方案

本文提出了一种突破大模型token限制的方案,通过MapReduce式任务分解与递归摘要处理海量数据。核心包括:1)数据预处理(去HTML标签、识别主体内容);2)递归摘要(将长文本切分后逐步摘要);3)文件系统作为外部记忆体;4)任务分解执行(Map阶段拆分任务并行处理,Reduce阶段汇总结果)。该方案参考了阿里JManus设计,通过智能调度和缓存优化,在保证内容完整性的同时降低计算成本,有效解决大模型长上下文处理难题。

2025-10-16 17:21:53 511

原创 优化RAG图文输出完整性的方案

本文探讨了企业RAG项目中LLM处理图文混合文档时输出不稳定的问题,主要表现为图片与内容错乱、缺失等。提出了5项优化方案:1)为图片添加语义化名称;2)调整提示词规范图片输出格式;3)分块存储图片并显式要求输出所有图片;4)添加元数据保证知识连续性;5)为分块添加摘要保留上下文。通过检索阶段优化分块策略、生成阶段强化提示约束,配合元数据管理,有效解决了图文关联错乱的问题,同时处理了分块带来的上下文断裂新问题,最终实现了稳定的图文输出效果。

2025-10-10 11:15:21 525

原创 Redis数据一致性问题方案探究

本文探讨了Redis与数据库数据一致性的解决方案。对于最终一致性,推荐"更新数据库后删除缓存"的基本方案,并提出四种优化方案:1)延迟双删策略;2)MQ异步更新;3)Canal订阅binlog日志;4)版本号控制。对于强一致性场景,建议采用租约策略,通过token机制确保只有一个线程能更新缓存。这些方案在保证数据一致性的同时,也考虑了性能因素,开发者可根据业务需求选择适合的解决方案。

2025-09-08 15:31:52 309

原创 剖析RAG本质(检索增强生成原理)及RAG效果优化

RAG(检索增强生成)是一种结合检索与生成技术的AI架构,通过动态引入外部知识解决传统大语言模型的局限性。其核心流程包括:文档解析切片、向量化存储、相似检索和答案生成,关键技术涉及文本切分策略、稠密/稀疏向量转换及向量数据库选择。RAG的优势在于让模型能实时访问最新知识,突破了传统模型的知识固化问题。实际应用中需平衡切片长度、向量模型选择和混合检索策略,以提升语义理解准确性。该技术已成为增强大模型知识库的主流方案,广泛应用于需要实时信息整合的智能问答场景。

2025-06-21 11:47:41 802

原创 Spring生命周期拓展点-造组件必备

详细理解Spring BeanPostProcessor & InstantiationAwareBeanPostProcessor & BeanFactoryPostProcessor & BeanDefinitionRegistryPostProcessor & InitializingBean & initMethod & @PostConstruct 的执行顺序

2024-09-25 11:28:12 705 1

原创 Mysql通过binlog日志恢复误更新数据

binlog数据恢复

2024-06-11 20:24:43 789

原创 开发命名规范

不过,相对于传统的适配器进行api转接,如果你的某个Handler里面方法特别的多,可以使用Adapter实现一些默认的方法进行0适配。说实话,它和Properties的区别并不大,但由于Option通常是一个类,所以功能可以扩展的更强大一些。英文里是评估器的意思。用来将context中传递的值进行复制,添加,清除,重置,检索,恢复等动作。程序收到的事件和信息是非常多的,有些是合法的,有些需要过滤扔掉。这个就有意思多了,统一的Controller,Service,Repository,没什么好说的。

2024-04-21 16:08:42 734 1

原创 DDD领域驱动设计落地

例如:Entity对象、持久层资源操作Dao、资源整合(db、redis)Repository(ps:资源实现,领域层需要什么,实现什么)例如:视图对象VO、业务实现service、资源Repository接口(ps:由基础层实现,要什么放什么方法)例如:业务service接口、Mq事件订阅发布。例如:数据传输对象DTO、Api调用门面接口Controller。基础层{infrastructrue}应用层{application}接口层{interfaces}领域层{domain}

2024-03-14 11:42:05 418 4

原创 源码探究-openfeign

本文分两个部分:1、项目启动,openfeign如何加载远程接口实例化并且注入到容器中2、远程调用实现原理。

2023-12-05 17:27:46 252

原创 常用JUC工具类

​其中,用户线程执行的过程我们称之为【用户态】,内核调度的状态称之为【内核态】,每一个线程运行时产生的数据我们称之为【上下文】,线程的每次切换都需要进行用户态到内核态的来回切换,同时伴随着上下文的切换,是一个比较消耗资源的操作,所以一个计算机当中不是线程越多越好,线程如果太多也是有可能拖垮整个系统的。如果抢锁失败,则继续执行步骤5。中会将锁释放一次,如果当前state是1,且当前线程是正在占用的线程,释放锁成功,返回true,否则因为是可重入锁,释放一次可能还在占用,应一直释放直到state为0为止。

2023-10-22 20:55:04 357 1

原创 neuxs搭建Maven私服细节

1、当我们在 maven 使用 maven-public 仓库地址的时候,会按照如下顺序访问:本地仓库 --> 私服 maven-releases --> 私服 maven-snapshots --> 远程中央maven 仓库(代理阿里云仓库) --> 私服 code-repo。然后我们再去本地maven中的setting.xml文件中修改镜像源成私服的镜像源,即可在私服上拉取依赖了。此时在项目中拉取依赖会报错401:权限不足。执行mvn deploy命令即可。

2023-09-14 00:49:25 435 1

原创 生产环境linux磁盘满了清理方案

在一次线上环境中,突然各种中间件都挂了,随即上线上环境查看,发现根目录占用达到100%。使用 df -h 查看如下:

2023-08-03 23:57:03 1929

原创 生产环境发生 cpu 飙高的问题解决

发生这类问题其解决关键就是找到发生cpu飙升的进程-->通过进程找到占用率最高的线程-->通过该线程找到对应的业务逻辑从而优化代码解决。

2023-03-31 17:36:30 1006

原创 手写线程池(简易版)

线程池有哪些作用?核心点:复用机制 提前创建好固定的线程一直在运行状态 实现复用 限制线程创建数量。

2023-03-30 10:56:29 206

原创 基于ThreadPoolExecutor自定义线程池详解

在阿里巴巴开发手册中不建议使用 Executor:因为默认的 Executors 线程池底层是基于 ThreadPoolExecutor 构造函数封装的,采用无界队列存放缓存任务,会无限缓存任务容易发生 内存溢出,会导致我们最大线程数会失效

2023-03-29 18:24:17 363

原创 JUC之手写Lock锁(aqs+cas+LockSupport)

Lock 锁是一种可重入的、线程安全的同步机制,它提供了比 synchronized 更高级的功能和灵活性。

2023-03-29 16:55:40 196

原创 手写LRU缓存淘汰算法(简易版)

如果你学过操作系统,必然有听过 LRU 算法,他是一种常用的页面置换算法实现的思想:选择最近最久未使用的数据予以淘汰。常见的页面置换算法还有很多,例如:最近最久未使用算法(LRU)、先进先出算法(FIFO) 、最佳置换算法(OPT) 、最不经常使用算法(LFU)、时钟算法(Clock)等

2023-03-29 15:21:07 221

原创 Springboot开发自定义starter

springboot通过一个@SpringBootApplication注解启动项目,springboot在项目启动的时候,会将项目中所有声明为Bean对象(注解、xml)的实例信息全部加载到ioc容器当中。 除此之外也会将所有依赖到的starter里的bean信息加载到ioc容器中,从而做到所谓的零配置,开箱即用。

2023-03-16 19:46:18 268

原创 性能测试工具Jmeter详解

Apache JMetier是Apache组织开发的基于Java的压力测试工具。一款非常优秀的开源的性能测试工具。

2023-03-08 21:37:42 216 2

原创 基于Docker容器搭建maven私服 nexus

基于Docker容器搭建maven私服 (nexus是一个maven仓库管理器)

2023-03-06 20:12:05 604

原创 [bug日记]idea中jar包资源明明存在,编译时却报jar包不存在异常:Error:(6, 34) java: 程序包xxx不存在的错误

Error:(6, 34) java: 程序包xxx不存在的错误

2023-03-01 18:09:53 3952 1

原创 Lombok注解之@SneakyThrows详解

@SneakyThrows注解是由lombok封装的,为代码生成一个try…catch块,并把异常向上抛出来使用范围: 只能作用在方法和构造函数之上。

2023-03-01 14:12:00 1320

原创 [bug日记]:Error creating bean with name ‘userServiceImpl‘: Unsatisfied dependency expressed through...

Error creating bean with name 'userServiceImpl': Unsatisfied dependency expressed through...

2023-02-26 18:09:30 286

原创 基于docker-compose搭建redis哨兵集群

本文基于docker-compose搭建redis哨兵集群

2023-02-26 00:27:38 1155

原创 InitializingBean、initMethod和@PostConstruct的比较

实现了InitializingBean接口的类,可以在该类被注入到spring容器时达到某些属性先装配完成后,再去装配另一些属性的能力。而spring提供的initMethod属性和@PostConstruct注解也可以达到相同的目的。

2023-02-24 13:34:31 962 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除