问题标签 [azure-cdn]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
501 浏览

caching - Azure CDN 边缘节点和来自源服务器的动态内容

我有一个主要是静态站点,其中包含一个特定的动态页面,每次源服务器被新请求命中时,我都放置了一个 max-age=7200 的缓存标头和一个等于新 GUID 的 ETag。

我正在通过 Fiddler 检查此 .aspx 页面的响应,并注意到我通过 CDN 访问它的前几次 ETag 不断变化(这意味着尽管最大年龄为 7200,但源服务器被击中了 3-4 次)。然后我达到了一个点,我将在 2 小时(7200 秒)的过程中刷新,并且尊重 max-age 并且 ETag 保持不变。

在这 2 个小时过去后,我注意到一个带有年轻缓存年龄和新 ETag 的新响应(假设它是“12345678”。但是,随后的请求再次忽略了我的 max-age 并使用新的 ETag 从原点提取了一个更新的副本。我又提出了几个请求,只是为了每次都看到新的 ETag。

然后,我再次点击刷新,瞧,我从几个请求中显示了相同的响应和 ETag“12345678”。

发生这种情况是因为正在调用不同的边缘节点并且它们在缓存到期时独立地从源中填充?是否有时我可能会从不同的边缘节点获取内容,因此我得到不同的 ETag,但有时我会被锁定到一个特定的边缘节点,该节点尊重完整的 7200 秒的 max-age?

0 投票
2 回答
1692 浏览

azure - Azure CDN 将 x-microsoft 标头添加到响应中,它们是什么以及如何删除?

将任何内容放入托管在 Microsoft Azure 上设置为公共 blob 的容器内的 blob 存储中,会将x-ms-...HTTP 响应中的各种标头附加到来自浏览器的标准 GET 请求。它们有什么用途,可以关闭吗?我不喜欢臃肿无用的 HTTP 标头。

0 投票
2 回答
1246 浏览

azure - 将自定义域映射到 Windows Azure CDN 不起作用

我创建了一个 Windows Azure Blob 存储并关联了一个 Windows Azure CDN 服务。
我将自定义域映射到 Azure CDN。为我的自定义域完成验证后,我创建了将 static.codeinstinct.pro 映射到 az412526.vo.msecnd.net 的 CNAME 记录。

结果,我有 3 个链接:
codeinstinct.blob.core.windows.net/test/trouble.gif
az412526.vo.msecnd.net/test/trouble.gif
static.codeinstinct.pro/test/trouble.gif

前 2 个链接有效,但最后一个链接无效(返回 400 'Bad request' 错误)。

我尝试获取自定义域的详细 DNS 名称。它看起来像:
;; 问题部分:
;static.codeinstinct.pro。在 CNAME 中
;;答案部分:
static.codeinstinct.pro。600 在 CNAME az412526.vo.msecnd.net 中。
;; 权威部门:
codeinstinct.pro。86399 在 NS ns01.parking.ru。
codeinstinct.pro。86399 在 NS ns11.parking.ru。

为什么它不工作?

0 投票
3 回答
19097 浏览

image - Azure,存储和部署静态内容(例如图像/css)的最佳方式?

我们即将将 .NET Web 应用程序部署到 Azure Web 角色。我只是想知道其他人如何处理他们的静态内容,特别是图像和 css?目前我们的应用程序包大约 25mb,但其中 18mb 完全来自图像,例如导航按钮、图标和模板组件等很少更新的东西。将其从部署包中分区并将其移至 blob 存储是否明智?

我对这种方法有一些疑问,我想知道它们是否有效......

  1. 我们网站的 80% 运行在 HTTPS 环境中。访问 blob 存储中的图像会引入跨脚本问题吗?

  2. 如果有人试图恶意破坏我们的图像(大多数小于 20kb),是否存在资金泄露漏洞?

  3. 我正在努力了解如何使用目录命名约定将文件上传到 blob 容器(来自 VS2010 + Azure SDK),所以我不需要重写 1000 个路径引用?我很欣赏目录是 blob 容器中的一个抽象概念,但我可以用正斜杠编写文件以在代码中模仿这一点。显然,在我上传到 Visual Studio 之前,Windows 不允许我这样做。

欢迎任何想法或替代策略。真正的目标是缩小我们的部署包以加快部署时间。我也很喜欢将图像服务卸载到专用节点以提高 Web 服务器性能的想法,也许我的图像集合太小以至于几乎不值得打扰?

5 月 16 日更新 ----------------------------------------------- -------------------------

这是我最后所做的:

1.将所有图像+ css转移到blob存储容器。我维护了 images 和 css 文件夹中所有子目录的结构。

2.在我们的 web.config 文件中应用 URL 重写规则,如下所示。

3.从应用程序中排除图像+ css文件夹并部署。

我的部署现在要小得多,并且图像在 CDN 上运行,从而释放了带宽、提高了下载速度并释放了 Web 服务器的一些负载。

更新:2015 年 9 月

最近在查看此内容时,我遇到了 Microsoft 提供的以下指南。它更详细地介绍了如何使用查询字符串自动部署资产和缓存崩溃。

在您的 Web 应用程序中提供来自 Azure CDN 的内容

0 投票
1 回答
1782 浏览

azure - 表存储服务(Azure 的 nosql 实现)与 Windows Azure 缓存(非结构化内存缓存)

我们想在 Azure 中实现缓存有两个主要原因:

  1. 加快重复数据访问
  2. 减轻数据库压力

以下是我们计划缓存的数据的特征:

  1. 相对较小(1 - 100 kb)
  2. 针对每个客户
  3. 不是私人的,但我们真的不希望随机的人浏览我们的整个缓存
  4. XML 或 JSON
  5. 由 C# 使用(即不直接在 html 中链接)
  6. 大多数星期数据不会改变,尽管有些日子数据可能会改变几次

对于这个特定目的,表存储似乎比 Blob 存储更好(我们只是为图像、CSS 和 JavaScript 实现了 Blob 存储)并且Windows Azure 缓存似乎比 Windows Azure 共享缓存更好(也许几乎总是更好,并且共享缓存主要是遗留的此时的功能)。

两者的编程 API 看起来很简单。与我们为云站点支付的费用相比,每个站点的成本似乎可以忽略不计。

到目前为止,由于我们认为 Azure 缓存的优缺点,我们倾向于表存储。作为老 .Net 人,我们对内存缓存比 NoSql 风格的解决方案更熟悉:

Windows Azure 缓存的问题:

  1. 如果将 VM 移动到不同的服务器(由 Microsoft 出于负载平衡或其他原因),内存中的缓存是否会原封不动地移动?
  2. 我们猜测,每当我们将更改发布到云时,它都会清除现有的内存缓存
  3. 虽然用户在进行更改时很少对缓存数据进行更改,但他们可能会在几秒钟内进行多次更新,我们不确定这将如何处理位于运行 Web 角色的多个节点的缓存,尤其是在流量增加的情况下. (这可能也是表存储的一个问题!)
  4. 表存储看起来更容易调试

Windows Azure 缓存的优势

  1. 快一些
0 投票
1 回答
185 浏览

azure - 在 CDN 端点中放置 WCF 服务?

是否可以将 WCF 服务放置在 Azure CDN Endopint 中?还是仅放置静态内容才有效?

这会很有用,因为我有一个不断与 WCF 服务通信的 Web 前端。

如果没有,关于如何减少延迟的任何建议?

0 投票
1 回答
485 浏览

azure-storage - Windows Azure CDN 不提供 gzip 压缩的资产,即使在两次上传资产后,一个是 gzip 压缩的,另一个是纯压缩的

我在stackoverflow上遇到了很多关于windows azure CDN无法提供gzip压缩资产的问题。我还浏览了某些链接,这些链接说可以做到。我很困惑,所以想在这里发布一个问题。

我有一个 Rails 应用程序,它从 Windows Azure CDN 提供所有资产。一切正常,但 CDN 无法提供压缩内容。这是一个链接,该链接建议将文件上传两次,一个是普通的,另一个是 gzip 压缩的,作为解决此问题的方法。我按照说明进行了操作。以下是链接的内容:

如果我不在 CDN 上托管,标头都设置得很好并且效果很好。有没有人有解决这个问题的方法?这可以做到吗?

提前致谢 :)

0 投票
1 回答
1028 浏览

azure - 是否可以通过删除文件并重新上传来使 azure cdn 无效?

我有 azure 存储并将其用作我的 Web 应用程序的 cdn,现在我想在每次将文件上传到存储帐户时使我的 cdn 内容无效。

我的问题是,当我删除 azure 存储容器中的文件并以相同的名称再次上传时,会导致 cdn 使该文件无效吗?(我知道将文件版本附加到文件名会导致 cdn 使该文件无效,但在这种情况下我需要监控所有旧文件并删除它们现在没有被引用,这是我最后的手段)

0 投票
1 回答
720 浏览

azure - CDN 是否支持视频缓存?

我是新的 Windows Azure,我将所有图像上传到 CDN。

它提供内存缓存,可以将我的应用程序数据存储在内存中,以提高应用程序的响应能力、性能和规模。

而且我还将我的预览视频内容上传到 Azure CDN,但我的应用程序播放器不播放这个视频 url,它喜欢 http://cdn.mydomain.com/myapp/videos/preview/1460_preview.mp4

你知道吗?如何通过 Azure CDN 提供此内容。

谢谢

0 投票
3 回答
1656 浏览

azure - 与普通 Blob 存储相比,CDN 是否会改善一次性下载 blob 的延迟?

我正在考虑一个高流量网站(每天数百万次访问)的解决方案,其中一些内容直接从 Windows Azure Blob 存储提供给访问者。Blob 存储提供的内容是预先计算的个性化博客;也就是说,不是许多用户共享的通常静态内容。我的目标是以低延迟提供这些内容。

该网站的受众与欧洲的一个国家密切相关。因此,第一个合乎逻辑的举措包括为存储帐户选择一个地理位置,该地理位置恰好在地理上接近目标国家。

然后,我想知道,在这种情况下,使用 CDN 功能是否会进一步改善延迟?特别是,它是否仍会改善首次检索内容的延迟?