大文件上传及拆分上传至服务器本地,OSS服务器,文件拆分合并上传

大文件上传拆分,使用base64写入本地txt拼接合并上传,拆分上传

新入职一家公司第一天领导给了个任务

说上传文件到服务器速度太慢

结果读完代码发现了问题

原有代码是将大文件拆分成5兆的base64字符串存储到数据库

每次都需要读取数据库该文件的base64字符串和第二个拆分文件合并再存储到数据库

直至最后一条合并,该方式因为base64多次上传到数据库,导致数据库性能消耗很高,效率很慢

· 想到了一个解决方式就是既然效率慢的原因是数据库读写base64字符串导致,

· 为何不将base64存储到本地文本用来拼接,数据库只存本地文本的路径呢

· 说做就做,结果显而易见,之前200兆文件上传需要30分钟,现在只需要不到2分钟,(用的测试服务器较差)

· 因公司保密要求,只上关键代码,异常自己补充,下面是大致步骤

· 最下方有两个方法

	//1.上传第一部分文件到本地,创建本地文本,将文件转为base64字符串存入文本
	//2.设置本地文本路径
	String filePath="D:/test.txt"
	//3.判断本地文件是否存在,如果存在就追加写入,如果不存在则创建并写入
	if (!file.exists()) {
			boolean hasFile = file.createNewFile();
			if(hasFile){
				log.i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值