1.报表导出过慢的问题:
在一次报表导出数据的过程中,随着业务量的增加,导出一个报表的时间过长,达到了2至3s钟,业务已经开始烦躁,并且狂点导出按钮,导致服务器出现了一些问题。通过对导出数据分析,发现分为五块互相没有依赖的数据,可以采用多线程导出。问题在于使用runnable接口是无法控制多个线程数据是否都已就绪。这里用到callable接口,可以有运行结果的返回值(同时也可以抛出异常)。于是改写成使用FutureTask来实现多线程报表的导出,将以前的2至3S的导出时间缩小到0.5s左右。
2.跨系统数据迁移的问题:
在做数据迁移的时候,发现配置的事务总是不会滚。原因在于连接了两个数据源,而我配置的事务管理器是老库的数据库管理器,新库的操作没有能够回滚;通过对数据迁移过程分析,我这里的插入操作都是在新库数据源上操作的,而只有一个步骤在老库中操作,这里我将新数据库的事务管理器配置到当前service中,保证了数据迁移的完整性;后来得知这是一个分布式事务的问题,以后再来做更好的优化;
工作中遇到的问题
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- //我所经历的大数据平台发展史(三):互联网时代 • 上篇http://www.infoq.com/cn/arti...