我是Azure CDN的新手。基本上,我正在尝试将CDN用于我的php网站图像,javascript文件和css文件。
我创建了一个Azure blob存储,然后添加了一个容器并开始向该容器添加文件。我注意到每个文件都可以通过类似https://*******.blob.core.windows.net/content/Test1.jpg
的URL进行访问。就这样!我想那是我想要的。但是,现在的问题是; CDN在哪里播放?我看到我们可以创建一个CDN,然后将端点添加到该CDN,该端点将进一步指向我之前创建的Blob存储。但是,问题是,为什么我已经能够通过Azure存储提供的URL访问文件时,为什么还要创建该CDN及其端点?
答案 0 :(得分:3)
CDN和像Azure blob存储这样的云存储是两件事。 CDN可以定义为:
内容交付网络或内容分发网络是 代理服务器及其数据的地理分布网络 中心。目标是提供高可用性和高性能 通过相对于最终用户在空间上分配服务。
云存储服务在云上提供高可用性和安全的存储空间。 Azure Blob存储为您提供了存储功能,但没有提供更好地向用户交付内容的方法。
使用Azure CDN,您可以使用最近的访问点(POP)服务器缓存从Azure Blob存储,Web应用程序或任何公共可访问的Web服务器加载的静态对象。通过利用各种网络和路由优化,Azure CDN还可以加速无法缓存的动态内容。
无论何时发出请求,Azure CDN都会确定最近的存在点服务器,并将从那里提供内容,而不是实际的服务器。
这将导致
为什么在我已经能够通过Azure存储提供的url访问我的文件时,为什么需要创建该CDN及其端点?
CDN特别有用
,如果您的流量来自世界各地以及来自不同的位置。
如果要向用户更快地传递内容。
如果要减少原始服务器上的服务器带宽。
因此,尽管部署CDN是一个好习惯,但是您也可以使用Blob存储。但是,当您从远处执行请求时,您可能会遇到更高的延迟,并且可能会遇到性能问题以及与带宽相关的问题,当您来自不同位置的站点流量很大时,或者负载突然增加时。您可以使用CDN来解决问题,否则对于附近附近访问量很少或中等的正常网站,如果不使用CDN,这是很正常的,因为使用CDN会产生额外的费用。
答案 1 :(得分:0)
您可以直接从url(https://*******.blob.core.windows.net/content/Test1.jpg)访问blob文件,因为您已将存储访问级别设置为公开,通常不是一个好主意。
请考虑将存储访问级别设置为私有,然后使用SAS(共享访问签名)访问存储帐户中的资产。 检查此链接:https://docs.microsoft.com/en-us/azure/storage/common/storage-dotnet-shared-access-signature-part-1
对于CDN,您的Blob文件保存在一个特定的位置,这意味着来自其他位置的用户在访问您的站点时可能会出现高延迟问题。
因此,您可能想在CDN配置文件中为存储帐户添加一个端点。然后用CDN链接替换原始的Blob网址,以供您参考资源。
要通过SAS使用CDN,请选中此document。