• 现在可用——Windows Azure SDK 1.6


    微软不久前宣布了Windows Azure SDK 1.6 和 Windows Azure Tools for Visual Studio 1.6的发布。现在人们可以通过WebPI来下载这个最新版本。

    当你下载并安装完该SDK时,你将发现

    • 该SDK 1.6与SDK 1.5兼容,这意味着你仍然可以使用1.5版的程序集。但是Visual Studio Tools必须要升级到1.6版。
    • 不同于前一版的SDK,这个版本包括4个组件:Windows Azure Authoring Tools、 Windows Azure Emulators、Windows Azure Libraries for .NET 1.6 和Windows Azure Tools for Microsoft Visual Studio 2010。

    这个新版本有一些重要的更新,它们是

    • 增强的Publish的功能:当通过检索Publish设置文件来发布你的应用程序时更容易连接到Windows Azure。它将使你配置部署的一些设置,而不用回到开发人员界面。
    • 多个profiles:publish settings、 cloud configuration等等将被存储在一个或多个MSBuild文件中。这样,在不同的build环境的设置之间进行切换就变得更加容易。
    • 支持MSBuild Command-line Build。
    • 支持In-Place Upgrade 。

    增强的Publish的功能

    让我们来看一看publish的新功能。首先用MVC 3 Web Role在Visual Studio 2010中创建一个新的Windows Azure project,在solution explorer里右击Windows Azure project节点,然后选择Publish,我们将看到新的publish对话框。

    在这个新的版本中,我们所要做的第一件事是连接到我们的Windows Azure subscription。点击“Sign in to download credentials”链接,我们将转到login页,需要输入Live ID。该Windows Azure Tool将生成一个certificate文件并上传到那些属于我们的subscriptions。然后我们将下载一个PUBLISHSETTINGS文件,该文件包含了credentials 和 subscriptions的信息。

    Visual Studio Tool将会生成一个certificate和作为Management Certificate已经部署到subscriptions的certificate。该VS Tool在下一步中将会使用这个certificate去连接subscription。

    在下一步中,我将回到Visual Studio(应当保持publish对话框仍然是开着的),点击Import按钮,选择我刚刚下载的PUBLISHSETTINGS文件。然后所有的subscriptions都将显示在下载列表中。

    选择一个subscription发布应用程序,点击Next按钮,然后我们可以选择对话框中显示的hosted service、environment、build configuration 和 service configuration。在该版本中我们可以直接创建一个新的托管服务,而不是返回到开发人员界面。只用选择hosted service中的<Create New …>。

    我们需要做的就是提供hosted service的名称和位置。

    一旦点击OK,几秒后托管服务就被建立了。如果我们去到开发人员界面,我们将在subscription中看到那个新建立的托管服务。

    a) 当我们通过Visual Studio Publish对话框创建一个新的托管服务时,目前我们还不能选择Affinity Group。

    b) 虽然我们能够指定托管服务的名称和通过开发人员界面的DNS前缀,我们不能从VS Tool中这么做,这意味着DNS前缀必须与我们指定的托管服务名称一致。例如,我们将我们的托管服务名称指定为“Sdk16Demo”,则公共URL将会是http://sdk16demo.cloudapp.net/

    在创建一个新的托管服务之后,我们可以选择cloud environment(production 或 staging)、build configuration (release 或 debug)、service configuration (cloud 或 local)。并且我们也可以通过勾选相关的checkbox来设置Remote Desktop。需要注意的一件事情是,在这个版本中,当我们设置Remote Desktop settings时默认情况下我们不需要指定一个certificate。

    这是因为Visual Studio将为我们产生一个默认的certificate。但是我们仍然可以通过点击“More Options”按钮为RDC指定一个已经存在的certificate。

    Visual Studio Tool将会为Remote Desktop连接创建另一个certificate。它将不会使用那个用来���理subscription的certificate。

    我们还可以选择“Advanced Settings”页来指定deployment label、storage account、IntelliTrace 和 .NET profiling information,等等。

    点击Next按钮,出现的对话框将显示我刚刚指定的所有设置,并且将它们保存为一个新的profile。最后一步是点击Publish按钮。

    因为我们开启了Remote Desktop功能,publish的第一步是上传certificate。然后它将核实我们所指定的storage account并上传该包,最后在Windows Azure里创建网站。

    多个profile

    发布之后,如果我们回到Visual Studio,我们将在该Azure项目的Profiles文件夹下面看到一个AZUREPUBXML文件。它包含了我们之前指定的所有设置。

    如果我们再次发布这个项目,我们可以使用profile当前的设置(hosted service、 environment、 RDC,等等),不需要再次输入它们。如果我们有多个部署设置,这将非常有用。例如,它将有一个部署的AZUREPUBXML profile来测试环境(debug building、less roles with RDC and IntelliTrace)还有一个用来生产(release building, more roles but without IntelliTrace)。

    支持In-Place Upgrade

    让我们在MVC页更改一些代码,并从Azure项目节点上点击Publish菜单键。不需要指定任何设定,这里我们可以通过加载Azure profile文件(AZUREPUBXML)以使用之前的设定。

    在点击Publish按钮之后,VS Tool弹出一个对话框指出在托管服务环境中有一个可用的部署,并提示要不要REPLACE。注意在这个版本中,对话框工具提示“replace”而不是“delete”,这意味着默认情况下当我们部署到托管服务与此同时已经存在一个部署时VS Tool将使用In-Place Upgrade 。

    在点击Yes之后,VS Tool将上传一个包并执行In-Place Upgrade 。如果我们回到开发人员界面,我们将发现托管服务的状态变成了“Updating…”。但是在先前版本的SDK中,它将试图删除整个部署并发布一个全新的部署。

    总结

    当微软宣布新特性能通过In-Place Upgrade 改变VM size,他们还提到在接下来的几个版本中将增强发布azure应用程序的用户体验。目标是,试图在Visual Studio里完成整个publish体验,这意味着不需要再接触开发人员界面。在SDK 1.6中,我们可以从新的publish对话框可以看到,作为一名开发人员我们可以完成整个过程,包括创建托管服务、指定环境、配置、远程桌面等值而不需要回到开发人员界面。

    希望对你有帮助,

    Shaun

    本文翻译自:http://geekswithblogs.net/shaunxu/archive/2011/11/15/now-available-ndash-windows-azure-sdk-1.6.aspx

  • 相关阅读:
    [nodejs]npm国内npm安装nodejs modules终极解决方案
    [nodejs]解决mysql和连接池(pool)自动断开问题
    [nodejs]国内npm安装nodejs modules失败的几个解决方案
    [less]用webstorm自动编译less产出css和sourcemap
    [javascript] Promise API
    [javascript]巧用sourcemap快速定位javascript中的问题
    Gruntjs提高生产力(四)
    Gruntjs提高生产力(三)
    Gruntjs提高生产力(二)
    Gruntjs提高生产力(一)
  • 原文地址:https://www.cnblogs.com/new0801/p/6176579.html
Copyright © 2020-2023  润新知