强烈建议您将缓存服务器和 Web 角色部署在同一虚拟网络上,以充分利用缓存服务器的性能。 要在 Microsoft Azure 上实现此目的,请按照以下步骤操作:
下载 NCache 用于 Azure NuGet 包 直接从 NuGet 网站。 然后,您需要使用 NuGet 包管理器将其添加到 Visual Studio 中,并将其安装到您的 Web 角色项目中。 这将自动包括所有必需的 NCache Microsoft Azure 项目中的程序集和配置文件。
步骤 2. 验证 NCache 适用于 Azure 程序集
验证是否在项目引用中添加了以下程序集(如下图所示) NCache 已安装 Azure NuGet 包:
这还将包括依赖程序集,即 Log4Net.dll、Protobuf-net.dll 和 Oracle.DataAccess.dll
验证 Config 文件夹是否包含 NCache 将 Azure 配置文件(Client.ncconf 和 Config.ncconf 文件)添加到项目中。
对于缓存服务器和客户端位于同一虚拟网络上的单站点部署,请在“ServiceConfiguration.Cloud.cscfg”文件中添加 Web 角色网络设置。
这些设置规定 Web 角色部署在相同的虚拟网络和子网上,其中 NCache 服务器驻留:
<NetworkConfiguration>
<VirtualNetworkSite name="NCacheVirtualNetwork"/>
<AddressAssignments>
<InstanceAddress roleName="NC-SessionAndObjects">
<Subnets>
<Subnet name="NCacheSubnet" />
</Subnets>
</InstanceAddress>
</AddressAssignments>
</NetworkConfiguration>
步骤5.修改 NCache 用于连接缓存的 Client.ncconf 文件
Client.ncconf 文件用于连接到任何集群缓存。 它包含集群缓存所在的服务器 IP 地址。 要连接到 Microsoft Azure VM 上已配置的缓存,修改 Client.ncconf 文件很重要。 您可以按如下方式更新此文件:
对于单站点部署: 如果 Web 角色将部署在与虚拟机相同的虚拟网络中,则不涉及任何特殊修改。
这是在 IP 地址为 10.0.0.4 和 10.0.0.5 的 Microsoft Azure VM 上配置的名为“Democache”的缓存的示例缓存标记
<cache id="Democache" client-cache-id="" client-cache-syncmode="optimistic" default-readthru- provider="" default-writethru-provider="" load-balance="True">
<server name="10.0.0.4"/>
<server name="10.0.0.5"/>
</cache>
Web-role 应该能够连接到缓存而无需任何显式端口转发。