Windows Azure的 - 转流.NET Web应用程序天青 [英] Windows Azure - Transfering .NET Web Application to Azure

查看:123
本文介绍了Windows Azure的 - 转流.NET Web应用程序天青的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我希望有人能回答有关Windows Azure的一些简短的问题。我知道这是有点懒,但微软网站覆盖的Azure似乎在半技术项目领导和全业务指标的被引导 - 他们从来没有真正似乎给了一个很好的简短的概述如何

我需要一些工作,以协助规模ASP.NET Web应用程序(有一些种类的蜘蛛程序在那里和pretty大型数据库。这也使得许多人呼吁外界Web服务)。

我的问题是:


  1. 从开发的角度来看 - 这是端口多么容易从标准IIS / SQL服务器类型的应用程序设置为Azure上。也有很大的编码参与。据我已经作原料,有你编程布等是不是真的实用的应用程序转换为Azure的培训视频?


  2. 我听说,您可以运行在Azure中的Windows Server 2008 R2实例 - 这是否意味着你不一定有具体的Azure SDK编程,并且可以只动IIS / SQL Server的成立Azure和利用scalablility的好处马上?



解决方案

您打几个点:培训,移植,缩放和虚拟机管理

培训

您或许应该看看一些的介绍视频 MSDEV 。在Windows Azure的2010年秋季系列是最新的。需要注意的是,要运行Azure中的应用程序,你需要了解Azure结构和相关的服务,如诊断和角色管理。

移植

您需要看你在做什么超越的核心asp.net,比如缓存,会话状态管理,安全,第三方的DLL,COM,注册表访问,以及任何其他管理员级别的功能。今天,随着SDK 1.2,你不会有操纵注册表或运行MSI的能力。我有一个<一个href=\"http://stackoverflow.com/questions/4009089/what-types-of-projects-are-suitable-for-azure/4009238#4009238\">related StackOverflow的帖子一些,你可能会遇到挑战的领域。关于SQL Azure的:某些功能,比如CLR支持,不落实,并且您将无法访问一些系统级功能。有关差异的详细信息可以在 SQL Azure的网站的白皮书中找到。

通过在PDC 2010引入的新功能,你应该能够克服几乎所有这些问题:


  • 会话状态可能被托管
    AppFabric的缓存。这将简单地
    配置改变你
    配置。该缓存将可用
    在所有部署的Web的
    实例,让您扩展。

  • 管理员级别的访问权限是可用的管理模式。您可以到
    运行微星并修改之类的东西注册表,当你角色实例启动。

缩放

您需要在您的应用程序如何处理缩放密切关注。例如:你可能有一个瓶颈,如果所有服务器实例尝试与相同的资源同时工作,造成锁。一个常见的​​Azure的模式是把工作项目,持久耐用的Azure Queue和有后台工作角色实例异步消费这些工作项目。

今天,Azure不提供外的开箱会话状态管理的能力(如存储在SQL Server的状态)。然而,有对SQL Azure的博客,工程大的下载的示例使用SQL Azure上。正如上面提到的,新的AppFabric缓存功能将提供会话状态管理,所以你很快就会有出的现成的解决方案。

虚拟机管理

VM角色在PDC公布。从本质上说,这将提供你采取一个Windows Server 2008 R2的形象,在当地建成,并将其移动到Azure的能力。你需要安装Azure的扩展,允许图像由Azure结构进行管理。

有一个权衡,虽然:您的虚拟机将无法从操作系统升级和补丁受益:您将负责管理这些(通过差异磁盘)。在Azure结构仍然会监视你的虚拟机的健康,并重新启动,或在必要时将其移动。我会建议先尝试使用管理员模式,所以你仍然可以利用的Azure中的服务,100%的优势。

I was hoping someone could answer some brief questions on windows Azure. I know this is a bit lazy, but the Microsoft websites covering Azure seem to be directed at semi technical project leads and full of business metrics - they never really seem to give a good short overview of the 'how'.

I have an ASP.NET web application that requires some work to assist with scale (there's some spider type processes in there and a pretty large database. It also makes many calls to outside web services).

My questions are:

  1. From a development point of view - how easy is it to port an application from standard iis / sql server type set up to Azure. Is there much coding involved. I've gone as far as starting a training video that has you programming the 'fabric' etc. Is it really practical to convert an application to Azure?

  2. I've heard that you can run Windows Server 2008 R2 instances in Azure - does this mean you don't necessarily have to program with Azure specific SDK, and can just move your iis / sql server set up to azure and utilise benefits of scalablility immediately?

解决方案

You hit on several points: training, porting, scaling, and virtual machine management.

Training

You should probably look at some of the intro videos at MSDev. The "Windows Azure Fall 2010" series are the latest ones. Note that, to run an app in Azure, you need to understand the Azure Fabric and related services such as diagnostics and role management.

Porting

You'll need to look at what you're doing beyond core asp.net, such as caching, session state management, security, 3rd-party DLLs, COM, registry access, and any other admin-level functions. Today, with SDK 1.2, you won't have the ability to manipulate the registry or run an MSI. I have a related StackOverflow post about some of the areas where you might run into challenges. Regarding SQL Azure: Some features, such as CLR support, are not implemented, and you won't have access to some system-level features. Details about differences can be found in a whitepaper on the SQL Azure site.

With the new features introduced at PDC 2010, you should be able to overcome nearly all of these issues:

  • Session state may be hosted in AppFabric Cache. This will simply be a configuration change to your config. This cache will be available across all of your deployed web instances, allowing you to scale.
  • Admin-level access is available with Admin mode. You'll be able to run MSI's and modify things like the registry when your role instances boot up.

Scaling

You'll need to look closely at how your app handles scaling. For example: you might have a bottleneck if all server instances attempt to work simultaneously with the same resource, causing locks. A common Azure pattern is to place work items in a durable Azure Queue and have background worker role instances consume these work items asynchronously.

Today, Azure doesn't provide an out-of-the-box session state management ability (e.g. storing state in SQL Server). However, there's a downloadable sample on the SQL Azure Blog that works great with SQL Azure. As mentioned above, the new AppFabric Cache feature will provide session state management, so you will soon have an out-of-the-box solution.

Virtual Machine Management

VM Role was announced at PDC. In essence, this will provide you the ability to take a Windows Server 2008 R2 image, built locally, and move it to Azure. You'll need to install Azure extensions that allow the image to be managed by the Azure fabric.

There is a tradeoff though: Your VM won't benefit from OS upgrades and patches: You'll be responsible for managing these (via differencing disk). The Azure fabric will still monitor your VM's health, and reboot it or move it if necessary. I would recommend first attempting to utilize Admin Mode, so you can still take advantage of 100% of Azure's services.

这篇关于Windows Azure的 - 转流.NET Web应用程序天青的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆