脑子不够,笔头来凑!我也不是什么大鸟,职场闯荡三年半,依旧觉得自己像个小白。幸好虽一把年纪,打怪升级,芳心依旧。矫情…

今天工作中测试使用 minio 上传大文件给 OOM ,可我本地本地测试没问题啊。当时就觉得哪里又又又又写了 bug,还是个低级的,查了半天发现是:测试环境服务封装在 docker 里面,容器设置了最大堆内存 1G,大文件超过 1G 了,我本地 mac 是 16G 的。So,这就能合理解释为啥子本地不报错,测试内存溢出了。

上传代码(部分)长这个酱紫:

String path = "./large-file.zip";
File file = new File(path);
InputStream inputStream = new FileInputStream(file)
minioClient.putObject(bucketName, file.getName(), inputStream,"application/octet_stream");

也是第一次搞对象存储,好些不知道。那会就想着输入流建立了管道,怎么还把内存给读爆了,(这里是老大提醒的)minio 内部设计的要从管道中读到全部数据再上传,那这个设计也太二了。

先将文件全部读到内存,再上传,要是文件再大点,这得要多大内存啊。

So 继续搜了搜,还真有分片上传。

版本是 7.0.2

<dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>7.0.2</version>
</dependency>

分片上传:

try(InputStream inputStream = new FileInputStream(file)) {// 设定每片大小 10MPutObjectOptions options = new PutObjectOptions(-1, 10 * 1024 * 1024);options.setContentType("application/octet-stream");minioClient.putObject(bucketName, fileName, inputStream, options);return true;
} catch (Exception e) {return false;
}

但是在后面的版本中就没找到 PutObjectOptions 类了,可能重新设计了分片上传的 api。但确定的一点是,分片上传的功能是有的。

minio 分片上传相关推荐

  1. minio实现大文件分片上传+断点续传+预览

    minio实现大文件分片上传+断点续传+预览 只提供后端java代码 思路: 前端分片 校验文件md5是否已经存在 --不存在创建临时桶存分片 校验分块是否已经上传 分块上传 合并分块 校验合成后md ...

  2. SpringBoot 分片上传、断点续传、秒传、直传Minio

    最近在学习,在SpringBoot上进行分片上传.断点续传.直接上传到Minio服务器上,中间也遇到的不少坑.自定义minio继承MinioClient来实现分片上传.比较适合初学者. 一.大致的流程 ...

  3. AWS-S3通用存储操作,操作minio、oss、cos等所有兼容s3协议的云存储(含有大文件分片上传实现)

    一.介绍 通用存储操作common包,支持所有兼容amazon-s3协议的云存储,如minio.oss.cos等,以后客户用啥云储存一套代码都能搞定了,真棒~ 二.代码结构 三.代码实现 3.1 po ...

  4. SpringBoot文件分片上传

    背景 最近好几个项目在运行过程中客户都提出文件上传大小的限制能否设置的大一些,用户经常需要上传好几个G的资料文件,如图纸,视频等,并且需要在上传大文件过程中进行优化实时展现进度条,进行技术评估后针对框 ...

  5. 7、AWS SDK for Go-文件分片上传

    7.AWS SDK for Go-object操作 对象介绍 源数据 对象分片上传 对象的分片上传优势 分段上传流程 分段上传开始 分段上传 分段上传完成 分段上传调用示例 分段上传列表 使用分段上传 ...

  6. 大文件分片上传,断点续传,秒传 实现

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  7. webuploader+PHP实现超大文件分片上传的功能

    在开发<工单地图>的时候,后台平面图上传的功能需要处理10M以上大小的文件上传,单个超大文件上传的时候容易出现各种问题,后来采用了分片上传的思路.将大文件分成多个小的文件分片,逐个上传到服 ...

  8. vue前端上传文件夹的插件_基于vue-simple-uploader封装文件分片上传、秒传及断点续传的全局上传插件...

    1. 前言 之前公司要在管理系统中做一个全局上传插件,即切换各个页面的时候,上传界面还在并且上传不会受到影响,这在vue这种spa框架面前并不是什么难题.然而后端大佬说我们要实现分片上传.秒传以及断点 ...

  9. jquery 分片上传php,php 大文件分片上传

    前端部分 上传 //上传控件 uploadBig('upload','zip,rar,7z,tar',{ id: '', type: 'upload_file', } ,(res)=>{ //t ...

最新文章

  1. 落地即一地鸡毛,AI落地存在的难题有哪些?
  2. 获得H.264视频分辨率的方法
  3. 第十二届蓝桥杯大赛软件赛省赛 C/C++ 大学B组
  4. 进入 App Store 打分
  5. Linux 环境下FC(SAN)磁盘在线删除
  6. C#操作Win7/Win8的库、收藏夹
  7. 北大青鸟 ASP.NET视频教程批量下载
  8. Java从入门到入土
  9. 【GAMES101】三维旋转矩阵中绕三个轴旋转的矩阵公式
  10. bushound的使用和UVC协议的应用开发
  11. 玩转Excel快捷键和常用函数和图表,赶紧学起来
  12. RequestError Error connect ETIMEDOUT 59.24.3.174443
  13. 计算机无法安装VC2015,VC++2015安装失败怎么办 VS2015安装失败解决方法
  14. OpenGauss数据库的安装与运行
  15. led灯光衰怎么解决_解决LED灯具光衰办法大全
  16. Unity IOS包在IPhone出现闪退
  17. 看了就会的浏览器帧原理
  18. LYOI2018 Hzy's Planets
  19. Centos 7 x64 搭建文件服务器HFS
  20. 计算机视觉——张正友棋盘格标定法

热门文章

  1. Openpyxl设置Excel 单元格样式
  2. 重庆“易法院”上线 民众足不出户参与诉讼全过程
  3. 7.PCIE配置空间读写软件
  4. 百度 2018 年营收破千亿,那么 AI 为它赚了多少钱?...
  5. 寄云一站式平台支持起医疗大数据的构建与运营
  6. 实验一 网络流量捕获实验
  7. python绘制一个圆当按下键盘的上下边缘会变大和变小_元贝驾考 模拟考
  8. c语言中表明空格的是什么代码,C语言代码中的空白符表示什么
  9. excel中单元格的绝对引用和相对引用
  10. 手机闪存速度排行_手机闪存性能排行