在Azure上托管托管应用程序

时间:2009-10-29 21:24:18

标签: architecture azure scaling cloud-hosting

我们有一个ASP.net Web应用程序,并且希望在Azure上托管以在并发用户上扩展到数千个。还有一堆用.NET编写的应用程序和服务,Web应用程序使用TCP / IP或.net远程处理来处理长时间运行的进程。例如,媒体代码转换器服务器,系统监视器,图像服务器,调度服务器仅举几例。

问题:

  1. Azure是否允许我们在Azure实例上安装这些?
  2. 假设对网站的需求增长,Azure需要扩展到多个实例,我们仍然只需要这些服务器的一个实例。我们如何获得主要实例的IP。

4 个答案:

答案 0 :(得分:2)

由于Windows Azure引入了full trust support,因此您几乎可以在Azure WebRole或WorkerRole上运行任何应用程序。主要的困难是您需要重新打包您的Windows Azure应用程序。如果您的应用程序是用.NET编写的,那么端口应该很简单。

关于长时间运行的进程,队列/工作者模式应该非常方便,您可以检查Lokad.Cloud以获得实际实现。

答案 1 :(得分:0)

您必须重写现有的应用程序才能在Azure上运行。

听起来你正在寻找一种在云端运行实例的方法,看看:

http://aws.amazon.com/ec2/instance-types/

答案 2 :(得分:0)

您不需要在Azure上安装服务,而是需要重新构建您的服务以在Azure中作为工作者角色运行 - 可能不会太困难,因为模式非常相似。但是,微软很可能会在明年初向Azure添加“VM角色”,以与亚马逊的EC2实例竞争。实施VM角色后,您可以随心所欲地为他们做任何事情,即安装您的服务。

答案 3 :(得分:0)

令人惊讶的是,Azure在构建时考虑了您的用例。您必须重新打包Azure的服务(正如人们所提到的)。我建议使用Microsoft PDC for Azure信息。他们有大量精彩的演示文稿,文章,视频和样本。

Azure有一个很好的系统,可以将服务映射到IP地址。这称为AppFabric Service Bus。连接到服务总线时,您可以作为服务的使用者或服务的提供者进行连接。总线负责将消费者和提供者映射到一起。您甚至可以让消费者或提供商在世界各地和防火墙内运行。这听起来就像你在寻找什么。使用此系统,您根本不必担心IP地址。您使用应用程序ID和令牌连接,然后按名称请求服务。 Azure负责其余部分。

要向上或向下扩展每个角色的实例数,您只需编辑服务配置文件以更改相应角色的实例数,并将更改发送到Azure。它会自动调整实例。

雅各