Nevin Dong's Blog

  • SQL Database性能(Performance)的可规划性(Predictability)及度量(Measurement)

    性能是一个大家经常关注的问题,直接体验就是系统/应用的运行速度、响应时间、并发用户数等。从个人机(PC)、服务器(Server)、虚拟化(Virtualization)、私有云(Private Cloud)到公有云(Public Cloud),性能一直是开发/IT运营持续改进的领域。 当然,性能也是一个需要深入的专业知识的工作,性能的度量(Measurement)、监控(Monitoring)、基准测试(Benchmarking)、调优(Tuning)/优化(Optimization)等,都需要对技术的深入理解...
  • 云集万物:支持百万级设备实时互连的Azure事件中心 (Event Hubs)

    之前曾探讨过一个有趣的话题,即: 支撑超百万级设备互联的Windows Azure 通知中心(Notification Hub) ,可以支持通过Windows 推送提醒服务 (WNS)、Microsoft 推送提醒服务 (MPNS)、Apple 推送提醒服务 (APNS)、Google Cloud Messaging (GCM)、百度通知等提醒服务,向百万级以上的活动的设备(特别是移动的设备)推送通知等消息。 有趣的是,Azure又推出了另一个支持百万级设备实时互连的服务,叫事件中心 (Event...
  • 针对Azure Storage的关键运行指标的度量与分析(Metrics and Analytics)

    Azure 存储(Storage)是Microsoft Azure云中非常关键的基础性服务,绝大多数的服务(例如Azure虚拟机VM的VHD文件、大数据HDInsight等),都基于这一关键服务。 对于希望深入管理自己云应用的IT人员或者开发人员,特别是一些基于Azure提供多租户(Multi-tenancy)服务的厂商,希望能够更深入地掌握自己账户的存储的运行情况,以便进行有效控制、成本分摊及异常诊断等。 这里涉及到的一个关键概念就是Azure的存储分析,可以为存储帐户提供指标数据,进行跟踪请求...
  • 从SQL Server到Microsoft Azure SQL Database的技术迁移及利器

    数据服务是几乎所有应用都要依靠,或者对外提供的关键性服务;一些关键性应用,例如企业级应用、在线游戏、电商等,对数据服务的可用性、一致性、伸缩性等有更高的服务等级要求。 随着云计算技术的推广,越来越多的IT管理/开发者考虑在Azure云中建立/使用数据库,主要有两种模式可以考虑:IaaS和PaaS。其中,IaaS模式是通过在Azure云创建及部署SQL Server(或其他服务器软件例如MySQL)的虚拟机的方式,提供及使用数据服务,即SQL Server VM in Azure;而PaaS模式则更简单...
  • 在Azure中国区使用PowerShell命令存取及访问Storage时需要注意AzureStorageContext的-Environment参数设置

    经常碰到有开发者在使用PowerShell命令存取及访问中国区的Azure Storage时,碰到一些问题需要调试。有的时候,使用网站上其他人调试过的共享代码也无法通过。 Azure PowerShell命令为访问和存取Azure Storage提供了强大的支持,对于常用的Azure存储类型,例如Table, Blob, Queue,以及目前还在Preview阶段的FileShare,都可以非常便捷的访问。常见的命令如: New-AzureStorageTable New-AzureStorageDirectory...
  • 通知中心(Notification Hub)支持百度通知的推送服务

    Microsoft Azure通过 通知中心(Notification Hub)提供了支撑超百万级设备互联的推送服务 。对于广大的Android和iOS的开发者,最近一个令人振奋的好消息:通知中心(Notification Hub)支持百度通知的推送服务。 这个服务不仅仅针对Azure中国地区(代号:Mooncake)的订阅,对于全球其他区域的Azure订阅同样有效。 在之前创建的通知中心服务中,可以发现已经提供了百度通知的配置。如下图: 在百度上创建的过程也是非常简单的,可以访问百度开放云,具体链接地址...
  • 如何使用Visual Studio连接到Microsoft Azure中国地区(Mooncake)订阅(Subscription)

    通过Microsoft Azure SDK可以使用Visual Studio 2013来管理Azure订阅(Subscription),使得开发和管理更容易。具体可见之前的文章: http://blogs.technet.com/b/nevin_dongs_blog/archive/2014/05/08/microsoft-azure-sdk-visual-studio-2013-azure.aspx 在使用中国地区(代号:Mooncake)订阅的时候,一个直接的问题是无法通过“连接到Microsoft...
  • Azure提供使用了固态硬盘SSD的新的虚拟机VM类型

    最近,在创建Azure虚拟机的时候,我们会发现多了一些新的选择,如下图: 一个明显的变化是出现了一些D系列的虚拟机,相比A系列同编号的虚拟机,内容要大1倍。当然,按照ScottGu的博客,新的虚拟机的CPU更快(60%)、更大的内容及本地使用了固态硬盘(Solid State Disk, SSD)。 http://weblogs.asp.net/scottgu/new-d-series-of-azure-vms-with-60-faster-cpus-more-memory-and-local-ssd...
  • HDInsight已在Azure中国区预览上线及几个亮点

    Azure中国区最近最让人兴奋的发布莫过于HDInsight已经预览上线了。具体可见官网的最新公告: http://www.windowsazure.cn/what-is-new/ 凑巧最近在忙着四处奔波、传道解惑,不过也是忙里偷闲,体验了一下这个新服务。 首先值得肯定的是微软与Hortonworks的联手,推动开放的Hadoop的发展,而HDInsight据说也是百分百原汁原味的Hadoop在Azure云上的实现。 其中值得重点推荐的有几个,首先是为Hive查询语言提供了一个不错的编辑器...
  • 两把利器,帮你深刻洞察SQL Server Azure VM上AlwaysOn高可用(HA)方案的运行状态(Status diagnostics)

    使用Microsoft Azure来运行关键性业务(Business Critical),数据库服务是一个非常关键的要求;而采用Azure IaaS(基础设施即服务),在Azure VM上部署SQL Server虚拟机,为了保证高可用性,采用AlwaysOn的故障自动转移群集(Failover Cluster)是一个明智且可行的选择。 为此,前阶段我曾制作了一个微软虚拟学院(Microsoft Virtual Academy,MVA)的系列课程,题目叫:《 在Windows Azure VM上实现SQL...
  • 在WebSites中使用EntityFramework访问SQL Database时可能遇到的一个连接问题

    最近碰到一个奇怪的问题,发生在一个典型的Microsoft Azure云应用开发场景:利用Azure WebSites快速开发云Web应用,同时利用SQL Database来存储数据并提供数据服务;使用Entity Framework,可以快捷、高效地在客户端建立数据模型,便于访问SQL Database中的数据并进行交互。 问题是:为了开发方便,在本地Visual Studio开发环境中开发WebSites应用,连接到Azure上的SQL Database的时候,一切正常;但将本地代码部署到Azure上的WebSites的时候...
  • 获取Azure应用服务状态提醒(Notification),了解Azure相关区域服务健康情况(Health)

    对于将云应用/服务部署在Microsoft Azure上的提供商而言,确保服务的正常运行是关键的工作。对运维及IT人员,如果能够及时掌握服务的运行状态,特别是当服务运行出现异常的时候,获得服务状态提醒(Service Status Notification),将可以大大提高运作的效率,及时采取相关调整措施。 之前曾经介绍过,Azure可以 通过管理服务(Management Service)提高可管理性 ,针对中国区Azure(代号Mooncake,MC),同样具有这一功能,如下图,可以查看指定时间段的操作日志...
  • 搭建跨订阅的虚拟网络到虚拟网络(VNET-to-VNET)连接,实现更灵活、更复杂的云服务部署

    早前,Microsoft Azure针对虚拟网络(Virtual Network),特别提供了 点到站点连接(Point to Site)、站点到站点连接(Site to Site) 服务,为IT人员搭建复杂网络,特别是部署混合云(Hybrid Cloud)提供了强大的支持。 但一些技术限制,例如Azure虚拟网络对本地网络只能建立1对1连接,不能建立虚拟网络到虚拟网络之间的连接等,对某些应用场景和需求而言,仍然存在一些差距。 而最新的Azure发布,包括中国区Azure(代号Mooncake,MC...
  • Microsoft Azure增加新的虚拟机映像、计算密集型规格(A8 & A9)及增强选项(Options)

    Microsoft Azure目前针对IaaS的最新发布,特别是针对虚拟机这一块儿,让人颇为眼前一亮。下面分享一下所体验的几个亮点。 首先,增加了不少新的映像类型,其中值得一试的包括: Windows 8、Windows 7虚拟机,如下图,目前提供了Windows 7和Windows 8.1的企业版本,这样可以让开发者非常方便地在熟悉的环境中开发和测试应用。 Visual Studio虚拟机,如下图,其中包括了Windows Server和Windows 8.1上的Visual Studio 2013的Ultimate...
  • 利用工具(Tools)支持,提升通知中心(Notification Hubs)的开发体验(Developer Experience)

    Microsoft Azure通知中心(Notification Hubs)是一个 可以支撑超百万级设备互联 的云平台服务,而在管理门户中新增的“调试”功能,为开发者提供了更好地支持。如下图所示,开发者可以选择不同的接收客户端平台,目前提供Windows 8、Windows Phone、iOS、Android等平台,也可以选择自定义模板的方式。此外,可以仅选取10个随机设备的方式调试通知中心的运行,而非大面积广播。 在调试界面,可以设置一个测试的通知正文,点击发送,如发送成功,则所选中的接收客户端将接收到相关通知...
  • 在 Visual Studio 2013 IDE中使用Microsoft Azure Mobile Services

    稍前提到, Microsoft Azure SDK + Visual Studio 2013,让Azure开发和管理更容易 ,对于Microsoft Azure移动服务(Mobile Services)开发者而言,这样的体会应该是更明显。 以前曾经尝试了一些Mobile Services的开发,比如: 基于Windows Azure Mobile Service,实现云连接(Connected)的Windows 8 Metro应用 、 自己动手打通Windows Store App, Windows...
  • Microsoft Azure SDK + Visual Studio 2013,让Azure开发和管理更容易

    最近重新装了电脑,将操作系统升到了Windows 8.1。 安装Visual Studio 2013 Ultimate版( http://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx ),然后安装Microsoft Azure SDK for Visual Studio 2013( http://azure.microsoft.com/en-us/downloads/?fb=zh-cn )。当然,也没忘安装PowerShell命令行工具...
  • Windows Azure虚拟机(VM)端点(ENDPOINTS)配置,及使用Firefox或者Chrome浏览器可能遇到的问题

    在使用Windows Azure虚拟机(VM)的时候,可以根据需要将端口(Port)增加到端点(ENDPOINTS)中。 具体方法是: 在管理门户(Management Portal)菜单项,选择“端点”,会列出所有已增加的端点,及其所对应的协议、公用端口和私有端口等。 可以在网页的下方,点击“添加”,以增加新的端点。 如下图: 可以选择添加独立终结点,或者添加到现有的负载平衡集,以将流量分摊到多个虚拟机上。 可参考下面的详细论述: https://www.windowsazure.cn/zh-cn...
  • SQL Server 2014正式上市(General Availability),在Windows Azure虚拟机(VM)可以同步使用

    4月1日,SQL Server 2014正式上市(General Availability)。 SQL Server 2014通过内置的驻留技术,为客户的所有工作负载提供对关键业务的高性能支持,可以通过熟悉的工具从任意数据中帮助客户快速获得洞察力,可以通过统一的混合云平台可以帮助客户快速搭建、部署和管理跨客户端和云的解决方案,为大数据解决方案提供更坚实的数据支撑平台。 下图列示了SQL Server 2014三大核心能力: 值得注意的是,与此同步,Windows Azure上也将原先的SQL Server虚拟机...
  • Windows Azure中国区开始支持实现自动伸缩(AutoScale),目前处在预览阶段(Preview)

    目前,Windows Azure中国区开始支持实现自动伸缩(AutoScale),不过尚处在预览阶段(Preview)。 如下图,点击云服务的“仪表盘”上,可以看到下面提供了“自动缩放状态”的功能。用户可以配置自动缩放,也可以浏览自动缩放操作日志。 而配置自动缩放,也是非常的方便、快捷。如下图,在功能菜单的“缩放”栏下,可见: 一个需要注意的是:自动缩放要求可用性集(Availability Set)中所有虚拟机大小相同,才能开始自动缩放配置。 对于更详细地了解自动缩放,不妨参考前阶段的文章:Windows...
  • 由世纪互联运营的微软Windows Azure公有云服务正式在中国大陆地区投入商业运营(2014年3月26日)

    昨天,在经历了近1年的公众预览阶段(Preview)后,由世纪互联运营的微软Windows Azure公有云服务正式在中国大陆地区投入商业运营。 可见最新发布的公告: http://www.windowsazure.cn/zh-cn/what-is-new/ 而在此前,1月16日,Windows Azure 支持也已经转入正式阶段: http://www.windowsazure.cn/zh-cn/support/plans/ 此次一个重要的发布就是:价格(见: http://www.windowsazure...
  • 通过软件保障(Software Assurance)实现SQL Server在Windows Azure虚拟机(VM)的许可移动性(License Mobility)

    最近,我在微软虚拟学院(Microsoft Virtual Academy)上讲了一门课:在 Windows Azure VM 上实现 SQL Server 高可用性及容灾设计。 http://staging.microsoftvirtualacademy.com/training-courses/835#?fbid=YLWfBUsNgJ8 课程主要介绍了如何基于Windows Azure 虚拟机部署SQL Server数据库服务器,这种方式将可以充分利用微软数据中心所提供的基础设施服务,拥有对Windows...
  • 为Windows Azure 虚拟机(VM)设置静态内部IP(Static Internal IP address, DIP)

    在Windows Azure中,为虚拟机同时提供两种IP:对外公开的虚拟IP,及对内使用的内部IP(Internal IP address, DIP)。 这两个IP都可以在Windows Azure管理门户(Management Portal)中仪表盘(Dashboard)上看到,如下图: 在Windows Azure一个订阅中,虚拟机之间可以通过VIP来互相通讯,这和外部通过internet连接到该虚拟机是一样的。 目前,VIP和DIP的一个主要区别就在于生命期及IP的稳定性。其中,VIP相对稳定...
  • Windows Azure 虚拟机(VM)尺寸选择及一些相关技术规格(Specification)的差异

    在Windows Azure上创建的虚拟机(VM),一个需要关键的参数就是虚拟机的尺寸。 目前,Windows Azure虚拟机尺寸的列表请访问: Virtual Machine and Cloud Service Sizes for Windows Azure http://msdn.microsoft.com/en-us/library/windowsazure/dn197896.aspx 其中,目前A8、A9还不针对虚拟机来提供,只用于云服务(Cloud Service)里。 针对不同的虚拟机尺寸...
  • 如何在Windows Azure Linux虚拟机(VM)上利用多数据磁盘(Data Disk)部署RAID

    稍前曾探讨“ 在Windows Azure上的Windows Server 虚拟机(VM)中灵活配置数据盘及RAID ”,那么,对于在Windows Azure上创建的 Linux虚拟机(VM),如何部署RAID? 首先,部署RAID的想法,对于一些LAMP的IaaS用户,是一个具有价值和吸引力的想法,例如,在Windows Azure上创建的 Linux VM,在VM上部署MySQL等服务,同时希望能够获得性能更高的磁盘读/写访问,得到更好的数据安全、支持更多的并发访问等。 Windows Azure...