Медиафайлы на Heroku

Если я размещаю небольшой сайт Django на Heroku и использую только один dyno, это сохранение для загрузки файлов мультимедиа на этот сервер, или мне обязательно нужно использовать хранилище AWS S3 для хранения файлов мультимедиа? Каковы другие альтернативы для хранения носителей?

2 ответа

Нет, хранить вещи в файловой системе Heroku никогда не безопасно. Даже если у вас есть только один динамо, он все еще эфемерен и может быть убит в любое время; например, когда вы нажимаете новый код.

Использование S3 - это путь (альтернативы - предложения Azure и Google). Есть несколько других преимуществ использования S3, в основном возможность обслуживать файлы без нагрузки на ваш маленький сервер.

Несмотря на то, что ваш сайт небольшой, dyno также очень маленький, поэтому главное преимущество S3, если оно используется правильно, заключается в том, что вы можете использовать поддержку инфраструктуры AWS S3 для обслуживания файлов. Под "правильным использованием" я подразумеваю, что вы хотите загружать и обслуживать файлы непосредственно на / из S3, чтобы ваш сервер использовался только для подписи URL-адресов S3, но реальные файлы никогда не проходят через ваш сервер.

Проверьте https://devcenter.heroku.com/articles/s3-upload-python и http://docs.fineuploader.com/quickstart/01-getting-started.html (я настоятельно рекомендую Fine-Uploader, если вы можете использовать бесплатная версия или позволить себе небольшую абонентскую плату.).

Очевидно, что вы также можете просто реализовать медиа-файлы S3 в django, используя django-storage-redux, но это означает, что ваш сервер будет загружать файлы. Если это нормально для вашего маленького сервера, то это тоже нормально.

Другие вопросы по тегам