【发布时间】:2017-01-11 03:58:50
【问题描述】:
我们基本上使用recommended cloud architecture,其中源图像存储在 Azure Blob Storage 中,imageresizer 在 Azure 应用服务上运行,Azure CDN 是 CDN 层。
尽管如此,我们还是遇到了 ImageResizer v3、Azure App Service deployment slots 和 DiskCache 的问题。
我们在 Azure 应用服务上使用暂存槽来防止中断。我们还使用 DiskCache 插件。在没有任何配置的情况下,imagecache 会写入特定于插槽的 D:\home\site\wwwroot\imagecache\。
这会产生两个问题:
- 当我们交换插槽时,使用的图像缓存已过时,并且会丢失大量图像。
- 在我们的应用服务计划中,我们总是有一个过时的图像缓存占用磁盘空间,我们的 Microsoft 顾问建议使用 Blob 存储而不是虚拟本地文件系统用于 DiskCache。
我注意到没有 BlobCachePlugin 或 S3CachePlugin,我想知道这是否有充分的理由。
我的问题是:
- 是否有理由不使用实现 ICache 接口的自定义 BlobStorageCachePlugin 将图像缓存存储在 Azure Blob 存储中?
- 如果有充分的理由,您建议采用什么替代架构来避免部署槽问题?
【问题讨论】:
标签: azure imageresizer azure-app-service-plans imageresizer-diskcache