Windows Azure Storage (18) 使用HTML5 Portal的Azure CDN服务
《Windows Azure Platform 系列文章目录》
Update:2015-04-15
如果读者使用的是国内由世纪互联运维的Azure China服务,请参考笔者的文档:Azure China (9) 在Azure China配置CDN服务 来配置相应的CDN服务。
熟悉Microsoft Azure的读者都知道,Azure在以前的Silverlight Management Portal中,已经提供CDN服务。但是自从改版成HTML5的Management Portal之后,CDN从Azure界面中消失了,用户没法创建新的CDN服务。
好消息是,最近HTML5的Management Portal又重新提供了Azure CDN服务,相比之前的Silverlight版本有一些区别,笔者在这里向大家介绍一下。
关于CDN的概念问题,笔者不再介绍,各位看官可以参考之前的文档:
Windows Azure Storage (8) Windows Azure 上的托管服务CDN (上)
Windows Azure Storage (9) Windows Azure 上的托管服务CDN (中) Blob Service
本章内容主要介绍访问保存在美国东部数据中心的数据,和采用CDN服务后,访问Azure CDN资源的网络延迟情况。
1.首先我们新建存储账号,命名为leicdnstorage,数据中心选择East US美国东部。数据冗余我们选择本地冗余。
因为笔者在中国上海,如果不通过CDN的话,需要直接从美国东部的数据中心获取数据。采用CDN之后,则直接可以从最近的CDN节点读取数据,访问速度会更快。
CDN提供了比Azure其他服务多的多的服务地点,涉及到了美国,南美,欧洲,中东,东亚,东南亚等区域。基本上覆盖了全球主要地区。
http://msdn.microsoft.com/en-us/library/windowsazure/gg680302.aspx列出了所有CDN节点位置。任何一个CDN服务只要创建了,就会在所有CDN节点上都生效,覆盖全面的CDN节点为全球范围的用户体验提供了保障。
从上面的MSDN连接中,我们可以看到离中国大陆最近的CDN节点在香港和台湾。

2.创建完毕后,我们创建container,名称设置为photos,并且设置属性为public blob。
请注意Azure CDN不支持Container属性为Private,即Private Container中的内容无法被CDN节点分发。

3.创建完毕后,我们将本地的一张图片WindowsAzure.png,上传至photos。
4.然后我们在Management Portal中,新建App Service-> CDN -> Quick Create,在Origin Domain中选择我们在步骤1中创建的leicdnstorage这个存储账号。如下图:

这样就把leicdnstorage这个存储账号下的Public Container和Public Blob的内容,分发到其他的CDN节点上。
5.创建完毕后,我们会看到CDN列表中的创建信息:

请注意:虽然上图中CDN Status为Enabled,但是并不是指数据已经从Azure East US数据中心同步到其他CDN节点。
以笔者个人经验来说,需要大约20分钟才能将storage account中的内容同步完毕。
以前我们访问Azure Storage中的数据是通过blob url,即http://leicdnstorage.blob.core.windows.net/photos/WindowsAzure.png
通过CDN服务,Azure Storage的URL映射为CDN URL,即上图中的http://az625188.vo.msecnd.net/,我们通过CDN URL访问Azure Storage中的数据地址为:http://az625188.vo.msecnd.net/photos/WindowsAzure.png
6.网络性能比较
1)首先我们通过http://leicdnstorage.blob.core.windows.net/photos/WindowsAzure.png
直接访问Azure East US数据中心存储的图片,通过Chrome的开发工具(F12),可以看到网络延迟在422ms左右。

2)我们通过http://az625188.vo.msecnd.net/photos/WindowsAzure.png
访问Azure的CDN节点服务器,访问png图片,通过Chrome的开发工具(F12),可以看到网络延迟在155ms左右。

总结,Azure CDN服务可以将Azure Storage中的文件直接推送到CDN节点服务器上,用户无需访问Azure数据中文的数据,而是访问离用户最近的CDN节点服务器,可以达到比较好的访问延迟。
Windows Azure Storage (18) 使用HTML5 Portal的Azure CDN服务的更多相关文章
- Azure Storage 系列(六)使用Azure Queue Storage
一,引言 在之前介绍到 Azure Storage 第一篇文章中就有介绍到 Azure Storage 是 Azure 上提供的一项存储服务,Azure 存储包括 对象.文件.磁盘.队列和表存储.这里 ...
- Azure Storage 系列(七)使用Azure File Storage
一,引言 今天我们开始介绍 Storage 中的最后一个类型的存储----- File Storage(文件存储),Azure File Storage 在云端提供完全托管的文件共享,这些共享项可通过 ...
- Azure Storage 系列(五)通过Azure.Cosmos.Table 类库在.Net 上使用 Table Storage
一,引言 上一篇文章我们在.NET 项目中添加了 “WindowsAzure.Storage” 的 NuGet 包进行操作Table 数据,但是使用的 “WindowsAzure.Storage” ...
- Azure China (9) 在Azure China配置CDN服务
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China Update 2015-11-20:Azure China CDN服 ...
- [SDK2.2]Windows Azure Cloud Service (35) 使用VS2013发布Azure Cloud Service
<Windows Azure Platform 系列文章目录> 好久没有更新BLOG了,今天我们继续Windows Azure相关的内容. 笔者最近把Visual Studio升级到了20 ...
- Windows Azure Storage (21) 使用AzCopy工具,加快Azure Storage传输速度
<Windows Azure Platform 系列文章目录> Update 2016-09-28 想要在Azure云端,使用AzCopy工具,从Azure China 上海数据中心存储账 ...
- Windows Azure Storage (22) Azure Storage如何支持多级目录
<Windows Azure Platform 系列文章目录> 熟悉Azure平台的读者都知道,Azure Blob有三层架构.如下图:(注意blob.core.chinacloudapi ...
- Azure Storage 系列(二) .NET Core Web 项目中操作 Blob 存储
一,引言 上一篇文章,我们介绍到在实际项目中系统会产生大量的日志文件,用户上传的头像等等,同时也介绍到可以使用Azure Blob Storage 来存储项目中的一些日志文件,用户头像,用户视频等等. ...
- 技术博客:Azure Functions + Azure Storage 开发
Azure GitHub wiki 同步发布 传送门 Azure Functions 通过 Functions(一个事件驱动型无服务器计算平台,还可以解决复杂的业务流程问题)更加高效地进行开发.在本地 ...
随机推荐
- ASP.Net Core 里是如何把一个普通的 Action 返回类型转换为某种 IActionResult 的
秘密在于这个类型: Microsoft.AspNetCore.Mvc.Internal.ControllerActionInvoker 在它的 CreateActionResult 方法里会将相关类型 ...
- string,stringbuilder,stringbuffer用法
总结:1.如果要操作少量的数据用 = String ==================================>字符串常量2.单线程操作字符串缓冲区 下操作大量数据 = Strin ...
- android-sdk 开发连接不上
74.125.237.1 dl-ssl.google.com
- Win7下VS2008破解方法
在Win7系统下,无法像xp下通过“控制面板”卸载的方法重新输入序列号来破解VS2008. 但可以通过以下几个步骤来破解: 1.首先需要安装VS2008,可以安装VS2008专业版90天试用版或VS2 ...
- 使用CocoaPods过程中 Unable to find a specification for
文章转自:http://blog.csdn.net/zhangao0086/article/details/39703083 当把CocoaPods生成的workspace移动到上层目录时,需要改下P ...
- checkBox 开关按钮
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 用Barcode生成条形码图片
使用第三方类库:BarcodeLib.dll private BitmapImage GenerateBarcodeBitmap(string visitId) { BarcodeLib.Barcod ...
- 51Nod 1010 只包含因子2 3 5的数 Label:None
K的因子中只包含2 3 5.满足条件的前10个数是:2,3,4,5,6,8,9,10,12,15. 所有这样的K组成了一个序列S,现在给出一个数n,求S中 >= 给定数的最小的数. 例如:n = ...
- 线段树 - ZYB's Premutation
ZYB has a premutation P,but he only remeber the reverse log of each prefix of the premutation,now he ...
- [RxJava^Android]项目经验分享 --- 失败重试
简单介绍一下业务逻辑:获取字符串,如果获取失败进行10次重试,超出10次未成功视为失败. 模拟获取字符串场景 代码块 class MsgTool { int count; String getMsg( ...