В основном мы используем recommended cloud architecture, где исходные изображения хранятся в хранилище Azure Blob, программа имиджеры работает в Azure App Service, а Azure CDN - это слой CDN.Можем ли мы использовать хранилище Azure Blob для ImageCache ImageResizer
Тем не менее мы сталкиваемся с проблемой с ImageResizer v3, Azure App Service deployment slots и DiskCache.
Мы используем промежуточный слот в нашей службе обслуживания Azure для предотвращения прерываний. Мы также используем плагин DiskCache. Без какой-либо конфигурации imagecache записывается в D: \ home \ site \ wwwroot \ imagecache \, который является слотом.
Это порождает две проблемы:
- Когда мы переставляем слотов ImageCache, который используется несвежий и много изображений будет отсутствовать.
- У нас всегда есть устаревшее воображение, занимающее дисковое пространство в нашем плане обслуживания приложений, наш советник в Microsoft рекомендовал использовать хранилище Blob вместо виртуальной локальной файловой системы для DiskCache.
Я заметил, что нет BlobCachePlugin или S3CachePlugin, и мне было интересно, есть ли веская причина для этого.
Мои вопросы:
- Есть ли причина, чтобы не хранить ImageCache в Azure Blob Storage с помощью пользовательского BlobStorageCachePlugin, который реализует интерфейс ICACHE?
- Если есть веская причина, в какой альтернативной архитектуре вы советуете избегать проблем с слотами для развертывания?
Согласно http://www.azurespeed.com/ латентность BlobStorage на самом деле не так уж плоха (около 40 мс с иногда пиком 400 мс). Тем более, что наша Служба приложений находится в том же центре данных/регионе, что и BlobStorage. У вас есть практический опыт, который предполагает иное? – Wilgert
Я никогда не видел латентность 40 мс, возможно, 100 мс в хороший день. если у вас хорошая латентность, вы можете посмотреть на сторонние пакеты nuget для этого. Правда, даже 40 мс в порядке на кеш-хиты? –