JFinal框架遇到的坑之一

项目用到了Jfinal框架, 某天发现线上服务总会卡死,跟了很久的代码,加了各种日志观察了慢SQL, 后来通过dump出堆栈,发现内存和CPU使用率非常高;

原来是在实现扫码领取红包功能时有用到Db.findFirst()方法, 这个方法实际上是会查所有数据封装到list, 然后list.get(0)返回, 导致数据查询结果集很大会将内存和IO消耗完, 最后通过修改SQL加上limit 1解决, 再使用Db.findFirst时一定要注意, 尽量不要用这个方法.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章