У меня есть API, созданный с помощью NodeJS, в этом API есть процесс, в котором я загружаю большой файл с использованием модулей request-promise, а затем создается новый буфер, загружаемый в minio. Но у меня есть проблема, что мой API всегда дает сбой, если размер файла превышает 80-100 МБ, а его NodeJS убит на сервере, как с этим справиться?
Эта функция предназначена для загрузки файла и преобразования его в буфер:
const convertLink = async link => {
const options = {
uri: link,
encoding: null,
headers: {
'Content-type': 'application/octet-stream'
}
};
const res = rp.get(options)
.then((body) => {
console.log(body)
const a = new Buffer.from(body);
return a;
})
.catch(err => {
console.log(err)
return err;
});
return res;
};
это функция для загрузки файлов в minio из miniosdk:
const streamUpload = async (bucketName, objectName, newBuffer) => {
try {
const isUploaded = await minioClient.putObject(bucketName, objectName, newBuffer);
if (isUploaded) {
return isUploaded;
}
} catch (err) {
return err;
}
};