项目涉及一个优惠券cvs表格的上传,数据量有几十万,文件大小50M,需要上传到服务器之后进行导入数据库处理。
问题:
1. 文件比较大,往往上传的时候会超时,导致后续处理无法进行
2. 文件的导入计算耗时比较久,也会造成等待超时
解决方案:
1 使用大文件上传控件 NeatUpload
2 文件上传与数据导入采用异步处理方式
第一步
建立文件导入记录-状态(待上传)
第二步
采用NeatUpload控件上传数据文件
更新文件导入记录-状态(上传中)
第三步
数据文件上传完毕
更新文件导入记录-状态(上传成功)
第四步
后台服务定时(10S)扫描文件导入记录-状态(上传完成)
得到记录和已上传的文件路径后在服务器后台执行数据导入计算
更新文件导入记录-状态(数据导入中)
第五步
后台服务导入数据完毕
更新文件导入记录-状态(数据导入完成)
--结束