会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
<导航
北冥有鱼
博客园
首页
新随笔
联系
订阅
管理
2025年4月27日
springboot分页查询并行优化实践
摘要: ——基于异步优化与 MyBatis-Plus 分页插件思想的实践 适用场景 数据量较大的单表分页查询 较复杂的多表关联查询,包含group by等无法进行count优化较耗时的分页查询 技术栈 核心框架:Spring Boot + MyBatis-Plus 异步编程:JDK 8+ 的 Complet
阅读全文
posted @ 2025-04-27 15:56 字节悦动
阅读(782)
评论(0)
推荐(14)
2025年2月28日
数据并发安全校验处理工具类
摘要: 一、项目现存问题描述 当前系统项目中,存在一些并发安全风险问题(虽然并发量较小)。特别是在处理审批状态修改和涉及金额数量的操作,由于缺乏有效的并发控制,可能会导致业务逻辑重复执行和数据不一致。例如 并发场景下,多个线程同时尝试更新同一笔交易状态或金额,这不仅会导致数据不一致,还可能引发更严重的相关业
阅读全文
posted @ 2025-02-28 16:54 字节悦动
阅读(327)
评论(1)
推荐(7)
2023年6月21日
Mybatis_Plus更新方法的总结
摘要: 一般根据条件更新表,都是先查询出具体行,再根据id更新即updateById,这样做的好处是行锁,减少锁的数据范围。但最近有个审核通过重复提交导致审核通过后续业务如重复扣款等问题,这里更新表状态时即可以利用状态机幂等机制防重处理。 伪代码: //修改为状态机幂等处理,防止重复审核造成业务金额重复扣减
阅读全文
posted @ 2023-06-21 15:06 字节悦动
阅读(725)
评论(0)
推荐(2)
2023年3月14日
源码阅读
摘要: 这篇文章来聊一聊如何去阅读开源项目的源码。 在聊如何去阅读源码之前,先来简单说一下为什么要去阅读源码,大致可分为以下几点原因: 最直接的原因,就是面试需要,面试喜欢问源码,读完源码才可以跟面试官battle 提升自己的编程水平,学习编程思想和和代码技巧 熟悉技术实现细节,提高设计能力 ... 微信读
阅读全文
posted @ 2023-03-14 10:24 字节悦动
阅读(271)
评论(0)
推荐(4)
2023年3月13日
21个设计MySQL数据库表的经验准则
摘要: 作为后端开发,我们经常需要设计数据库表。整理了 21 个设计 MySQL 表的经验准则,分享给大家,大家看完一定会有帮助的。 1.命名规范 数据库表名、字段名、索引名等都需要命名规范,可读性高(一般要求用英文),让别人一看命名,就知道这个字段表示什么意思。 比如一个表的账号字段,反例如下: acc_
阅读全文
posted @ 2023-03-13 21:05 字节悦动
阅读(6266)
评论(0)
推荐(24)
2023年3月7日
try-catch性能问题?
摘要: 转载掘金:yes的练级攻略 “yes,你看着这鬼代码,竟然在 for 循环里面搞了个 try-catch,不知道try-catch有性能损耗吗?”老陈煞有其事地指着屏幕里的代码: for (int i = 0; i < 5000; i++) { try { dosth } catch (Except
阅读全文
posted @ 2023-03-07 17:00 字节悦动
阅读(168)
评论(0)
推荐(1)
Spring大事务优化
摘要: 所谓的大事务就是耗时比较长的事务。 Spring有两种方式实现事务,分别是「编程式」和「声明式」两种。 不手动开启事务,mysql 默认自动提交事务,一条语句执行完自动提交。 大事务产生的原因 操作的数据比较多 调用了 rpc 方法 有其他非 DB 的耗时操作 大量的锁竞争 执行了比较耗时的计算 大
阅读全文
posted @ 2023-03-07 10:10 字节悦动
阅读(489)
评论(0)
推荐(1)
2023年2月4日
stream流中toMap()api和Duplicate key问题
摘要: 1、指定key-value,value是对象中的某个属性值。 Map<Integer,String> userMap = userList.stream().collect(Collectors.toMap(User::getId,User::getName)); 2、指定key-value,val
阅读全文
posted @ 2023-02-04 18:27 字节悦动
阅读(4760)
评论(0)
推荐(5)
2023年1月3日
阿里官方 Redis 开发规范
摘要: 本文主要介绍在使用阿里云Redis的开发规范,从下面几个方面进行说明。 键值设计 命令使用 客户端使用 相关工具 删除bigkey 通过本文的介绍可以减少使用Redis过程带来的问题。 一、键值设计 1、key名设计 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如
阅读全文
posted @ 2023-01-03 14:02 字节悦动
阅读(194)
评论(0)
推荐(0)
Git commit规范
摘要: 前言 Git每次提交代码都需要写commit message,否则就不允许提交。一般来说,commit message应该清晰明了,说明本次提交的目的,具体做了什么操作……但是在日常开发中,大家的commit message千奇百怪,中英文混合使用、fix bug等各种笼统的message司空见怪,
阅读全文
posted @ 2023-01-03 06:27 字节悦动
阅读(1240)
评论(0)
推荐(2)
下一页
公告