在日常的工作中,很多时候都需要导出各种各样的报表,但是如果导出的数据一旦比较大,很容易就导致超时,对于这种问题,有很多的解决方法,例如网上说的分批导出、采用CSV、还有就采用JAVA、甚至是C++和C等等去做这种事情,这些都是方法,但没有一一去试过,只试过采用CSV方法,确实是要快一点,但感觉治标不治本,因为数据量肯定会越来越多,所以CSV也是支撑不了太久。
在这里,我采用了另外一个方法,采用异步处理数据;具体的流程如下图:
具体步骤:
1、建一张表,存储任务的记录;
2、写一个脚本,读取表中的请求记录,然后对记录进行数据的处理并生成Excel表格,保存到指定的目录;
3、使用定时任务,每隔一段时间去执行一下这个脚本;
4、完成