同时处理大量数据时,会发现系统越跑越慢,每处理一条数据的时间越来越长,除了改用纯 jdbc、增加jvm内存等原始手段外,可以使用 hibernate session 的 flush、clear 方法类清空内存,从而达到性能提升的效果。
更详细的资料可以参考文档:Batch Import Performance With Grails and MySQL
示例代码如下,每处理 1000 条数据就清理一下 session: