微软云计算一个WebRole中可以支持多个站点

使用了微软云计算后,为了保证MindV在线思维导图服务的质量,开了多个实例。目前的用户水平足够了。

但是公司业务的发展,需要增加新的网站。两年多来,云计算在线服务品质有目共睹,用户多次反映MindV在线服务可以与国际大品牌在线服务相媲美,甚至超越。所以希望新的网站也是基于云计算平台。但增加一个新网站至少一个实例,那一年的费用也是1万块呀。但新的网站业务量较小,开一个单独的实例又太浪费。因此咨询了微软云计算的支持小组梁琦先生。他告诉我一个好的消息,Windows azure 1.3以后其实WebRole已经可以支持多个网站了。http://msdn.microsoft.com/en-us/library/windowsazure/gg433110.aspx 这里有详细的资料。

按照MSDN中的说明下载了例子,但是总有些问题,在调试环境运行不起来。于是对例子稍作改变,新的站点采用单独的端口(因为我的这个网站不需要对外公开)。

方法是,工程中添加新的Asp.net Project WebRole2,然后修改ServiceDefinition.csdef如下既可以了。 

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="WindowsAzureProject1" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
  <WebRole name="WebRole1" vmsize="Small">
    <Sites>
      <Site name="Web">
        <Bindings>
          <Binding name="Endpoint1" endpointName="Endpoint1"   />
        </Bindings>
      </Site>
      <Site name="Web2" physicalDirectory="..\webrole2">
        <Bindings>
          <Binding name="Endpoint2" endpointName="Endpoint2"   />
        </Bindings>
      </Site>
    </Sites>
    <Endpoints>
      <InputEndpoint name="Endpoint1" protocol="http" port="80" />
      <InputEndpoint name="Endpoint2" protocol="http" port="88" />
    </Endpoints>
    <Imports>
      <Import moduleName="Diagnostics" />
    </Imports>
  </WebRole>

</ServiceDefinition> 

有了这个功能,可以多创建几个网站了,充分利用云计算的潜力了。 

本文例子下载地址 http://vdisk.weibo.com/s/ae5wM 

 

posted @ 2012-08-09 21:53  hansen  阅读(950)  评论(0编辑  收藏  举报