Где хранить такие вещи, как изображения пользователей, с помощью Azure?Хранилище BLOB-объектов?

StackOverflow https://stackoverflow.com/questions/1482341

  •  18-09-2019
  •  | 
  •  

Вопрос

Я только что перенес свой проект для тестовых случаев в Azure Microsoft.

Но для функций, подобных загрузке аватара, мне нужен доступ на запись к файлам на жестком диске.Но это облако, поэтому это невозможно.Как я могу вместо этого создать такие функции?Стоит ли использовать хранилище BLOB-объектов или есть лучшее решение?

Имеет ли смысл хранить все изображения веб-сайта (например,изображения макета) в хранилище BLOB-объектов?Итак, у меня будет домен без файлов cookie для моего статического контента?

Это было полезно?

Решение

Хранилище BLOB-объектов определенно является местом для размещения динамических изображений, таких как аватары.Хотя вы можете записывать на диск виртуальной машины, на которой вы будете работать, вы не можете рассчитывать на его присутствие — если ваше приложение будет перенесено на другой компьютер (что может произойти по множеству причин), это хранилище будет быть стерты.

Единственное, что вы можете сделать, — это хранить изображения в хранилище BLOB-объектов и кэшировать их на локальном диске виртуальной машины (используя стандартные механизмы файлового ввода-вывода).Таким образом, вы получите довольно хорошую производительность и сэкономите на нескольких транзакциях хранилища, при этом убедитесь, что вы не храните данные в энергозависимом хранилище.

Если у вас есть статические изображения, которые будут полностью статичными, они просто включены в ваше приложение и на них можно ссылаться как на обычный файл.Но если вам когда-нибудь понадобится их изменить, вам придется повторно развернуть приложение, поэтому используйте этот метод только для изображений, которые не нужно будет менять.

Другие советы

Имейте в виду, что есть два типа больших двоичных объектов в Windows Azure:Блокировать BLOB-объекты и страничные BLOB-объекты.Блочные BLOB-объекты подходят для обслуживания мультимедийных файлов, тогда как страничные BLOB-объекты оптимизированы для других рабочих шаблонов.

Также рассмотрите возможность использования Azure Сеть распространения контента (CDN) для снижения задержки для клиентов.

Azure также имеет возможности потоковой передачи, которые работают совместно с Silverlight Smooth Streaming (http://blog.smarx.com/posts/smooth-streaming-with-windows-azure-blobs-and-cdn, если интересно).

«Имеет ли смысл хранить все изображения веб-сайта (например,изображения макета) в хранилище BLOB-объектов?Значит, у меня будет домен без файлов cookie для моего статического контента?»

Да, я так думаю — это то, что я сейчас реализую.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top