![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Minio
文章平均质量分 88
Minio
云烟成雨TD
一个追求有道有术的非典型程序员
展开
-
Minio入门系列【19】断点续传和断点下载实现方案
文章目录前言断点续传概念方案1. 文件状态查询2. 查询已上传分片信息3. 继续上传断点下载前言在之前,我们实现了常用的上传下载、分片上传、秒传等功能,实际一个文件存储管理系统,这些远远还是不够的,比如断点续传。可以参考阿里的文档,是怎么实现这些功能的。阿里OSS开发文档断点续传概念通过断点续传上传的方式将文件上传到OSS前,您可以指定断点记录点。上传过程中,如果出现网络异常或程序崩溃导致文件上传失败时,将从断点记录处继续上传未上传完成的部分。方案要实现断点续传,需要依赖于MD5秒传和分片原创 2022-03-16 16:16:28 · 14252 阅读 · 5 评论 -
Minio入门系列【18】Minio+vue-uploader 分片上传方案及案例详解(源码文尾附上)
文章目录前言优化方案案例1.前言我们之前分析过Minio 的上传接口源码,其是进行了分块,再上传分块到Minio 服务器,最后再对块进行合并。针对大文件的上传,如果采用上传到文件服务,再上传到Minio,其效率是非常低的,首先上传到文件服务(会存放在Tomcat 临时目录)就已经比较慢了。针对大文件的上传,我们需要一个优化方案。优化方案前端服务进行分片处理,将分片信息传递给文件服务,文件服务返回所有分片的上传链接及uploadId。前端服务直接请求Minio 服务器,并发处理上传分片所有原创 2022-03-15 16:37:03 · 13980 阅读 · 21 评论 -
Minio入门系列【17】MD5秒传原理及入门案例
文章目录MD5秒传摘要算法MD5加密MD5秒传入门案例1. 前端代码MD5秒传摘要算法摘要算法是一种能产生特殊输出格式的算法,这种算法的特点是:无论用户输入什么长度的原始数据,经过计算后输出的密文都是固定长度的,这种算法的原理是根据一定的运算规则对原数据进行某种形式的提取,这种提取就是摘要,被摘要的数据内容与原数据有密切联系,只要原数据稍有改变,输出的“摘要”便完全不同,因此,基于这种原理的算法便能对数据完整性提供较为健全的保障。但是,由于输出的密文是提取原数据经过处理的定长值,所以它已经不能还原为原创 2022-03-11 17:00:19 · 5684 阅读 · 3 评论 -
Minio入门系列【16】Minio分片上传文件putObject接口流程源码分析
前言为了更好的理解和优化Minio文件上传,本篇文档对MInio中上传文件putObject接口源码分析以下。基于Java 客户端 APIController层上传文件接口: @PostMapping("/upload") @ResponseBody public Object upload(MultipartFile file, String bucketName) throws IOException { return minioTemplate.putOb原创 2021-10-26 16:59:14 · 30856 阅读 · 15 评论 -
Minio入门系列【15】WebUploader上传文件的高级用法之进度条显示、文件过滤、图片预览、图片压缩
深入了解请参考官网详细说明进度条显示使用进程文件上传时,进度条显示是一个常用的功能,而WebUploader组件也是支持的。文件上传中,Web Uploader会对外派送uploadProgress事件,其中包含文件对象和该文件当前上传进度。我们这里只需要在JS中添加以上事件就可以了。 // 文件上传过程中创建进度条实时显示。 uploader.on('uploadProgress', function (file, percentage) { let $li = $原创 2021-10-25 22:29:30 · 4060 阅读 · 1 评论 -
Minio入门系列【14】开源前端上传文件组件Uppy、filepond、dropzone介绍及入门案例
前言在之前我们使用了WebUploader进行上传文件,这是百度开发的,但是自2014年之后就没发布新版本了,所以研究了下其他开源的Web组件,界面更好看,功能更枪法。下面列举几种并入门体验下,实际使用可以参照。UppyGitHub地址官方文档简介Uppy 是一款时尚的模块化 JavaScript 文件上传器,可与任何应用程序无缝集成。它速度快,具有易于理解的 API。从本地磁盘、远程 URL、Google Drive、Dropbox、Box、Instagram获取文件或使用相机拍摄和记录自原创 2021-10-25 14:12:57 · 3314 阅读 · 0 评论 -
Minio入门系列【13】使用WebUploader上传文件到Minio服务器
前言在之前介绍了Minio常用功能,以及如何使用JAVA SDK集成Minio,但是没有涉及到前端应该怎么做,接下来介绍如何使用Web组件集成Minio进行文件处理。WebUploader(摘自官网)1. 简介WebUploader是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件。在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,沿用原来的FLASH运行时,兼容IE6+,iOS 6+, android 4+。两套运行时原创 2021-10-24 22:18:22 · 2887 阅读 · 0 评论 -
Minio入门系列【12】Spring Boot集成Minio
前言之前介绍了如何使用Minio提供的JAVA SDK进行上传和下载文件,在此基础上,我们可以使用spring boot集成Minio JAVA SDK,添加自动配置、装配、客户端管理等功能,简化开发。Spring Boot集成Minio1. 环境搭建首先我们搭建一个spring boot基础工程,引入以下依赖 <dependencies> <dependency> <groupId>org.springframew原创 2021-10-23 14:38:46 · 5798 阅读 · 0 评论 -
Minio入门系列【11】多版本功能使用详解
前言使用场景利用多版本控制,您可以在一个桶中保留多个版本的对象,使您更方便地检索和还原各个版本,在意外操作或应用程序故障时快速恢复数据。默认情况下,新创建的桶不会开启多版本功能,向同一个桶上传同名的对象时,新上传的对象将覆盖原有的对象。多版本控制版本说明:版本描述最新版本多版本控制开启后,同名对象多次操作,每次操作都会对应一个版本号进行保存。最后一次操作保存的版本号,为最新版本。历史版本多版本控制开启后,同名对象多次操作,每次操作都会对应一个版本号进行保存。除最后一原创 2021-10-20 16:44:36 · 7463 阅读 · 4 评论 -
Minio入门系列【10】Minio之权限控制策略
前言本段文章来源于华为云OBS,因为都是S3标准的对象存储,所以很多概念和Minio是相通的。为什么要进行访问权限控制(华为OBS)为保证存储在SSO中数据的安全性,SSO资源(桶和对象)默认为私有,只有资源拥有者可以访问。如果要允许他人访问和使用自己的SSO资源,可以设置访问权限控制策略,向他人授予指定资源的特定权限。访问权限控制的典型场景(华为OBS)OBS如何进行访问权限控制(华为云)OBS提供丰富灵活的访问权限控制手段,满足不同场景下的授权需求。IAM用户权限控制相对比阿原创 2021-10-20 11:30:21 · 32914 阅读 · 1 评论 -
Minio入门系列【9】JAVA集成Minio之对象操作API使用详解
上传对象1. PutObject调用PutObject接口上传文件(Object)。public ObjectWriteResponse putObject(PutObjectArgs args)注意事项:添加的Object大小不能超过5 GB。默认情况下,如果已存在同名Object且对该Object有访问权限,则新添加的Object将覆盖原有的Object,并返回200 OK。OSS没有文件夹的概念,所有资源都是以文件来存储,但您可以通过创建一个以正斜线(/)结尾,大小为0的Object原创 2021-10-19 19:19:20 · 24130 阅读 · 7 评论 -
Minio入门系列【8】JAVA集成Minio之存储桶操作API使用详解
前言多种SDK官方文档minio-javaMinio 提供了多种语言的SDK,比如java、go、python等。JAVA开发平台可以选择JS和java SDK,也就是前端和后端都可以直接集成minio。技术方案每个OSS的用户都会用到上传服务。Web端常见的上传方法是用户在浏览器或App端上传文件到应用服务器,应用服务器再把文件上传到OSS。具体流程如下图所示。和数据直传到OSS相比,以上方法有三个缺点:上传慢:用户数据需先上传到应用服务器,之后再上传到OSS。网络传输时间比直传到O原创 2021-10-19 16:32:30 · 13082 阅读 · 12 评论 -
Minio入门系列【7】对象存储 OSS概述
对象存储 OSS文档来源于阿里云对象存储 OSS,Minio也是对象存储 OSS,很多概念都是相通的,所以了解下。实际企业应用使用阿里OSS是一个很不错的选择。对象存储服务(Object Storage Service,OSS)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。阿里云对象存储OSS(Object Storage Service)是阿里云提供的海量、安全、低成本、高持久的云存储服务。其数据设计持久性不低于9原创 2021-10-19 09:31:49 · 3769 阅读 · 0 评论 -
Minio入门系列【6】MinIO Admin 使用详解
概述MinIO Client(mc)提供了“ admin”子命令来对您的MinIO部署执行管理任务。service 服务重启并停止所有MinIO服务器update 更新更新所有MinIO服务器info 信息显示MinIO服务器信息user 用户管理用户group 小组管理小组policy MinIO服务器中定义的策略管理策略config 配置管理MinIO服务器配置heal 修复MinIO服务器上的原创 2021-10-18 11:30:28 · 6507 阅读 · 0 评论 -
Minio入门系列【5】MinIO Client使用详解
简介MinIO Client 简称mc,是minio服务器的客户端,对ls,cat,cp,mirror,diff,find等UNIX命令提供了一种替代方案,它支持文件系统和兼容Amazon S3的云存储服务(AWS Signature v2和v4)。ls 列出文件和文件夹。mb 创建一个存储桶或一个文件夹。cat 显示文件和对象内容。pipe 将一个STDIN重定向到一个对象或者文件或者STDOUT。share 生成用于共享的URL。cp原创 2021-10-18 10:51:54 · 15430 阅读 · 1 评论 -
Minio入门系列【4】纠删码及分布式Minio集群环境搭建
标题标题原创 2021-10-17 22:24:19 · 7184 阅读 · 8 评论 -
Minio入门系列(3)-Minio最新版更新说明
前言众所周知,Minio的更新速度非常快,从Github中可以看到,基本都是几天就发布了一个新版本,因为公司服务器使用的是2020年的版本,在更新到2021年的最新版本时,发现了一些比较大的变化,特地写文章记录下,避免其他人踩坑。启动命令更新时使用了老版本的启动命令,发现控制台有很多警告信息。1. 设置用户名和密码的参数名过时WARNING: MINIO_ACCESS_KEY and MINIO_SECRET_KEY are deprecated. Please use MI原创 2021-08-25 23:01:55 · 12874 阅读 · 0 评论 -
Minio入门系列(2)-Windows/Linux/K8S单机部署Minio
下载国内下载地址根据系统下载安装包Windows下载安装包在minio.exe目录打开cmd配置参数并启动# 设置用户名set MINIO_ACCESS_KEY=admin# 设置密码(8位)set MINIO_SECRET_KEY=admin123# 指定启动端口(未指定默认9000)及存储位置minio.exe server --address 0.0.0.0:9999 D:/data登录地址IP+9999,输入用户名及密码,搭建完成Linux下原创 2020-11-10 11:43:17 · 3094 阅读 · 2 评论 -
Minio入门系列(1)-简介(摘自官网)
简介MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。目前支持JavaScript 、Java、Python、Golang、.NET。MinIO现在也是CNCF成员,在云原生存储部原创 2020-11-09 14:11:01 · 4216 阅读 · 0 评论