[英]ASP.NET In a Web Farm
将ASP.NET
应用程序部署为web farm
时需要注意哪些问题?
所有会话状态信息都需要跨服务器复制。 最简单的方法是使用如上所述的 MSSQL 会话状态提供程序。
任何磁盘访问,例如用户存储的动态文件,都需要位于所有服务器都可以访问的区域。 例如通过使用某种形式的网络附加存储。 脚本文件、图像和 html 等只会在每个服务器上复制。
需要检查在应用程序对象中存储任何信息或加载应用程序启动信息的尝试。 每次用户点击服务器场中的新机器时,这些事件都会触发。
正如其他人所建议的那样,每个服务器上的机器密钥非常大。 如果您针对 IP 地址而不是域使用 ssl,您也可能会遇到问题。
您必须考虑将要采用的负载平衡策略,因为这可能会改变您的方法。
会话是一个很大的问题,请确保您使用 SQL Server 来管理会话并且所有服务器都指向同一个 SQL Server 实例。
我遇到的最大问题之一是分布在不同服务器上的不同机器密钥的问题。 ASP.NET 使用 machineKey 进行各种加密操作,例如 ViewState 和 FormsAuthentication 票证。 如果您有不同的机器密钥,您最终可能会发现服务器无法理解来自其他服务器的回发。 如果您想了解更多信息,请看这里: http : //msdn.microsoft.com/en-us/library/ms998288.aspx
如何:设置多服务器 ASP.NET Web 应用程序和 Web 服务
日志聚合很容易被忽视——在处理 HTTP 日志之前,您可能需要将它们组合起来以创建一个包含发送到跨服务器的请求的日志。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.