Подача статических файлов с R2 Cloudflare
Описание архитектуры
У меня есть приложение Django, размещенное в контейнере Azure App Service, и прокси-сервер через DNS Cloudflare.
Приложение работает отлично, и с помощью WhiteNoise я могу обслуживать статические файлы, хранящиеся в контейнере хранения Azure App Service, который предоставляется вместе с App Service (10 ГБ). Дело в том, что хранилище обслуживает только файлы, используемые веб-приложением (файлы, загруженные во время сборки, нет возможности вручную добавить другие файлы), и оно ограничено пропускной способностью 100 ГБ в месяц.
Я хотел бы попробовать использовать хранилище R2 от Cloudflare, так как оно имеет неограниченную пропускную способность и позволяет загружать любые файлы. В основном я буду использовать изображения.
Вопрос
Как можно обслуживать статические файлы с R2 Cloudflare в приложении Django?РЕДАКТИРОВАНИЕ:
Я успешно подключился к своему ведру Cloudflare's R2 с помощью [Boto3][1], но все еще не могу связать его с приложением Django на Azure.Я не знаю, насколько хорошо R2 будет работать как CDN с точки зрения стоимости/задержки, но пока вы остаетесь в пределах бесплатных ограничений, это, вероятно, в основном хорошо (задержка TTFB будет самой большой проблемой, как и в любом объектном хранилище).
Мы работаем над тем, чтобы сделать возможным размещение кэша перед R2, так что это поможет в производительности и стоимости, как только это станет доступным.
К сожалению, я думаю, что SO будет плохим средством для отладки вашего вопроса, поскольку он неясен. Возможно, вы можете получить помощь в реальном времени на R2 discord, а затем вернуться сюда, чтобы опубликовать ответ, когда вы разберетесь с проблемой?
Поскольку это похоже на сложную работу, если у вас есть рабочий пример, мы будем рады разместить его на https://developers.cloudflare.com/r2/examples/.