azure-blob-storage - 在 Azure Blob 存储中更新 Blob 需要多长时间?
问题描述
我正在使用 Azure Blob 存储来存储我的新网站的图像。
当我有一个名为 background.jpg 的图像并将其替换为不同的图像时,但名称相同 (background.jpg) 可能需要长达一周的时间才能真正更改为网站上的新图像。
测试它的唯一方法是通过 VPN 访问该网站或使用其他人的机器(以前从未访问过该网站)。
我已多次清除本地存储和缓存。
就好像 Blob 存储在服务器端有自己的缓存机制。
我已经查看了 Microsoft Docs,但他们在这方面的理解并不那么简单。
提前致谢!
解决方案
实际上,blob 中的更新不应该那么长。原因可能不仅仅与blob Storage有关。如果您的存储帐户中的图片更改了这么久或者只是您的网站,您可以先检查它。
我能想到的原因有以下三个:
1.使用CDN
考虑到您所说"The only way to test it is to either visit the website through a VPN or use someone else's machine"
,您应该检查您是否在您的网站上使用 CDN。
从理论上讲,这种情况不是很科学,但原因很简单,很容易理解。如果您没有记录保存,那么厂商只能为您提供海外节点进行中继,这将导致访问您网站的内容,包括图像的速度较慢。
2.没有删除浏览器缓存
你说的另一句话"I have cleared my local storage and cache multiple times."
我不知道你清除的缓存在哪里,如果不是浏览器的缓存,你也可以尝试清除它。
3. 在 Azure 存储中使用 Cache-Control
您应该检查是否在Blob Properties中设置了Cache-Control。如果你设置它,你可以这样做不缓存:Cache-Control "private, no-cache"
推荐阅读
- node.js - 如何在 Docker 中运行两个 node.js 应用程序和 mysql
- python - 在 Python ftplib 中上传文件的名称中使用变量
- javascript - 使用 .map 分配返回的承诺的值
- python - 查找组内差异最大的组名
- php - 在 Laravel 6 中仅更新控制器中一个字段的值
- javascript - Firefox 插件的私钥在哪里存储
- excel - 循环过早停止
- android - 挂起函数只能在协程体内调用
- javascript - 我怎样才能按住一个键(shift)并执行一个动作(点击)
- testing - 有没有办法将测试套件/案例从 MTM 应用程序移动到 Azure Devops 的测试计划?