IIS ASP.NET应用程序中的静态变量,带有2个实例

时间:2013-11-15 17:01:45

标签: c# asp.net asp.net-mvc iis-7

我有一个代码文件夹, c:\ some-ASPNETMVC-site

2个IIS7网站指向该文件夹,每个网站都有自己的应用程序池

如果我设置一个静态变量,在这种情况下是一个log4net appender的日志文件路径,在运行时到每个站点不同的值,这些值会相互写入,或者它将被视为2个应用程序并独立于彼此?

1 个答案:

答案 0 :(得分:1)

来自TechNet Article on IIS Application Pools

  

Internet信息服务(IIS)应用程序池是一种分组   路由到一个或多个工作进程的URL。因为   应用程序池定义一组共享一个或的Web应用程序   更多的工作流程,它们提供了一种方便的管理方式   一组网站和应用程序及其相应的工作者   流程。流程边界将每个工作流程分开;因此,   一个应用程序池中的Web站点或应用程序不会受到影响   由其他应用程序池中的应用程序问题应用程序池   显着提高了Web的可靠性和可管理性   基础设施。

鉴于每个应用程序池都是自己的一组工作进程,每个静态变量在该实例中都是唯一的,如果在运行时设置该值,则不应共享。