博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hibernate 高并发下遇到的大坑
阅读量:4649 次
发布时间:2019-06-09

本文共 399 字,大约阅读时间需要 1 分钟。

hibernate使用简单,但是对高并发环境有不少坑。

以下是笔者遇到的高并发之痛:

在做类似于秒杀任务时,使用了hibernate的setXX方法,在单实例并发100之内,使用乐观锁对数量的增加是正常的。但是当并发更大时,而且配置了多任务,此时发现已下发任务数一直在反复。奇怪的是使用了乐观锁更新,为什么会发生这样的事件呢?经过了增加缓存,批量更新都无济于事,开始怀疑是框架的原因。一步一步调试,发现在保持更新之前使用了setXX方法来对数量进行了操作,它会自动保存数据!

定位到了问题,果断在更新之前去掉hibernate的setXX方法,通过spring的jdcbTemplate进行数据更新。

特记录此问题,为以后使用框架时,从多方面考虑。后续项目切mybatis,使用原生的SQL更靠谱!

转载于:https://www.cnblogs.com/bury12/p/8051797.html

你可能感兴趣的文章
[转]优化Flash性能
查看>>
popStar手机游戏机机对战程序
查看>>
Java Web项目结构
查看>>
lambda表达式树
查看>>
二次注入原理及防御
查看>>
会话记住已登录功能
查看>>
Linux内核分析——可执行程序的装载
查看>>
第一阶段冲刺3
查看>>
父类引用指向子类对象
查看>>
网页如何实现下载功能
查看>>
IT男专用表白程序
查看>>
读《大道至简》第六章感想
查看>>
ef linq 中判断实体中是否包含某集合
查看>>
章三 链表
查看>>
Solution for Concurrent number of AOS' for this application exceeds the licensed number
查看>>
CSE 3100 Systems Programming
查看>>
IntelliJ IDEA 的Project structure说明
查看>>
Java Security(JCE基本概念)
查看>>
Linux Supervisor的安装与使用入门
查看>>
创建 PSO
查看>>