我的用例涉及使用浏览器将数千个完整质量的照片和视频文件上传到S3和Wasabi存储帐户。目前,我们正在客户端浏览器上对其进行压缩,目前我们使用的是处理上传的dropzonejs。现在它在被上传到服务器之前被压缩了。
然而,这正是我们需要改变的地方。我们需要上传原始质量的照片,这是因为我们不能上传文件超过3-4 Gbs使用Dropzonejs。不知道是什么阻止了它,但我们正在努力寻找解决办法。我们面临的问题,随机内存限制在Chrome崩溃,并需要重新启动进程。与原始质量的照片,我们假设这将不会工作,因为我们将讨论至少10至15 gbs的数据,至少。
在这种情况下,我们需要上传视频&原始质量的照片,有时一张照片可能和40Mbs+一样多,您会建议这样做。和视频几个Gbs。
谷歌照片是如何管理的?我们需要这样的东西。
发布于 2022-04-02 16:34:39
不要在客户端压缩。它实际上增加了浏览器会话上的内存使用量。据我的经验,从浏览器上传原始图像使用最少的内存,因为浏览器应该只从文件中读取足够的数据来发送数据,只要您不是在本地加载图片以显示缩略图。
在关闭客户端压缩的情况下,我能够将图像的GBs上传到S3。我能够将一个20 S3的视频文件上传到S3,使用S3块上传总计超过13 S3的200个视频。块上传应该增加,而不是减少浏览器内存的使用,并实现了提交大文件的传输失败。
发布于 2022-04-02 16:17:13
块状..。
有人已经有了演示https://github.com/dropzone/dropzone/blob/main/test/test-sites/2-integrations/aws-s3-multipart.html
但是,我认为4GB是Chrome会接受的最大文件大小(我认为chrome比其他浏览器有最高的限制)。这意味着您需要使用其他方法上传,如ftp、流、scp等.或者,在通过浏览器上传文件之前,请客户端自己对文件进行切片。
或创建与S3客户端捆绑的自定义可执行文件,并允许客户端使用该文件。
发布于 2022-04-02 16:17:50
dropzonejs支持分块和并行,您使用过它们吗?是否按下拉区域压缩文件,如:https://stackoverflow.com/a/51699311/18399373
https://stackoverflow.com/questions/71649080
复制相似问题