2014-09-26 69 views
3

我试图将我们基于Azure的webservice的测试实例部署到新的D系列Azure虚拟机。我们广泛使用临时文件,并希望我们会看到一些很好的性能改进。不幸的是,我们似乎无法使用新的vmsizes进行打包或构建。我们目前csdef看起来是这样的:部署到新的D系列Azure虚拟机

<?xml version="1.0" encoding="utf-8"?> 
<ServiceDefinition name="WebAPI.Azure" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2013-10.2.2"> 
<WebRole name="WebAPI" vmsize="Large"> 
<Sites> 
    <Site name="Web"> 
    <Bindings> 
     <Binding name="Endpoint1" endpointName="NonSSL Endpoint" /> 
    </Bindings> 
    </Site> 
</Sites> 
<Endpoints> 
    <InputEndpoint name="NonSSL Endpoint" protocol="http" port="80" /> 
    <InternalEndpoint name="InternalHttpIn" protocol="http" /> 
</Endpoints> 
</WebRole> 
</ServiceDefinition> 

如果我从“大”到“Standard_D3”切换vmsize,并尝试建立或包发布,我得到这个错误:

Error 2 The XML specification is not valid: The 'vmsize' attribute is invalid - The value 'Standard_D3' is invalid according to its datatype 'http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition:RoleSize' - The Enumeration constraint failed. C:\Users\ablack\Desktop\WebAPI.Azure\ServiceDefinition.csdef 3 34 WebAPI.Azure 

怎么办我得到这个模式更新?或者有没有办法在构建&包过程中重写XML验证?

回答

3

显然,2.4 SDK完全删除了vmsize约束(它接受任何值,包括像“Supersize”这样的组成值),所以我们必须升级到那个才能尝试任何新的大小选项。这将使基准测试变得复杂(我们需要首先获得新的SDK的新基线),但c'est la vie。

+0

是的,这里是确认:https://msdn.microsoft.com/en-us/library/azure/dn794167.aspx“用户不再需要升级到更新版本的SDK以使用新的Azure虚拟机大小” – Dunc 2015-03-18 19:41:18