Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni
🤖🚫 AI-free content. This post is 100% written by a human, as is everything on my blog. Enjoy!30.06.2023
Робота з великими вихідними файлами на ECS
Літо, річка
Сьогодні продовжував роботу з ECS, генерацією даних, тестами та так далі. Додатковий нюанс — застосування великих вихідних файлів.
-
Якщо в тесті потрібний великий файл (типу, 1 Гб), то через безплатний ngrok його не завантажити. Також не хотілося додавати файл у Git, бо видалити його буде складніше, ніж додати. Тоді можна відвантажити файл на S3 або інше сховище з можливістю публічного доступу. А мій улюблений спосіб простого тимчасового захисту — файл з випадковим імʼям.
-
Є інший варіант — пакувати файл в образ Docker. Щоб уникнути Git, його доведеться пакувати локально, але з ECS для цього немає перешкод — після авторизації в ECR можна відправляти образи прямо зі своєї машини. Проте ECR коштує в 5 разів більше за S3 (зараз $0.10 за Гб/місяць).
-
А якщо файл — це 5 гігабайтів JSONу, то його має сенс стиснути. Тут варто знати, що формат gzip - потоковий формат стискання. Та файл, що був стиснутий у gzip, можна відкрити та читати послідовно, без того, щоб розтискати та займати зайве місце. Наприклад, в Go стиснутий файл відкривається функцією gzip.NewReader.