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(一个事件驱动型无服务器计算平台,还可以解决复杂的业务流程问题)更加高效地进行开发.在本地 ...
随机推荐
- CSS3简单的栅格系统
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 使用Spring发送带附件的电子邮件(站内和站外传送)
JavaMail的介绍 JavaMail,顾名思义,提供给开发者处理电子邮件相关的编程接口.它是Sun发布的用来处理email的API.它可以方便地执行一些常用的邮件传输. 虽然JavaMail是 ...
- CollectionView水平和竖直瀑布流的实现
最近在项目中需要实现一个水平的瀑布流(即每个Cell的高度是固定的,但是长度是不固定的),因为需要重写系统 UICollectionViewLayout中的一些方法通过计算去实现手动布局,所以本着代码 ...
- React News Site 新闻站
Learn React & Webpack by building the Hacker News front page from https://github.com/theJian/bui ...
- 我理想中的父母(The Ideal Parents In My Heart)
Parents are the first teachers in children's life, and people all know the great importance exactly ...
- 用Barcode生成条形码图片
使用第三方类库:BarcodeLib.dll private BitmapImage GenerateBarcodeBitmap(string visitId) { BarcodeLib.Barcod ...
- 如何在Web引用中使用项目自定义的类
这个是老架构了,不推荐现在这么用,维护一个老项目记录一下. 项目中WebService和客户端是在一个解决方案下,实体类是一个公用的Project,如果使用Web引用自动生成的类会缺少一些实体类定义的 ...
- Python 进程间通信
from multiprocessing import Process,Queue import os,time,random def write(q): print('Process to writ ...
- XML的简介及其与HTML的区别及联系
XML: Extensible Markup Language(可扩展标记语言) HTML:HyperText Markup Language(超文本标记语言) 两者都是由万维网联盟(W3C)推出的S ...
- Web API Get Started First
注:此博客是自官网修剪而来,博主IT新手 一.web api与web service的不同: web api是基于Http协议,而web service是基于soap协议.两协议的区别小子看了很多,但 ...