我有一个代码文件夹, c:\ some-ASPNETMVC-site
2个IIS7网站指向该文件夹,每个网站都有自己的应用程序池。
如果我设置一个静态变量,在这种情况下是一个log4net appender的日志文件路径,在运行时到每个站点不同的值,这些值会相互写入,或者它将被视为2个应用程序并独立于彼此?
答案 0 :(得分:1)
来自TechNet Article on IIS Application Pools
Internet信息服务(IIS)应用程序池是一种分组 路由到一个或多个工作进程的URL。因为 应用程序池定义一组共享一个或的Web应用程序 更多的工作流程,它们提供了一种方便的管理方式 一组网站和应用程序及其相应的工作者 流程。流程边界将每个工作流程分开;因此, 一个应用程序池中的Web站点或应用程序不会受到影响 由其他应用程序池中的应用程序问题应用程序池 显着提高了Web的可靠性和可管理性 基础设施。
鉴于每个应用程序池都是自己的一组工作进程,每个静态变量在该实例中都是唯一的,如果在运行时设置该值,则不应共享。