2011-01-24 57 views
4

在IIS应用程序池中,我在进程模型中的最大工作进程中设置了2,应用程序对象,会话对象和缓存对象将由所有工作进程共享,进程有不同的应用程序对象,会话对象和缓存对象。具有多个工作进程的Asp.net应用程序

+0

它可能也可能不相关,但为什么你想要两个不同的过程? – mpeterson 2011-01-24 19:08:58

回答

2

如果您在proc状态管理中使用会话保持在运行过程中。所以如果你有两个或两个以上的工作人员,你的会议只能偶尔工作。您可以使用SQL状态管理或状态服务器。 使用状态服务器速度非常快,但如果状态服务器发生故障或重新启动,所有会话都将丢失。使用SQL服务器有点慢,但它有一个好处,即在重新启动或任何中断之后,会话都会在那里。所以选择什么取决于你的要求。如果您正在运行电子商务网站或类似服务器,则可以使用集群和多个Web服务器来设置SQL Server,以获得更好的正常运行时间。

至于缓存是一样的,缓存保存在工作进程中。取决于在缓存中构建对象的成本,您可以使用MemCached或类似的东西。但是,您需要序列化/去缓存对象并通过电线将它们发送到另一台服务器,这可能也相当昂贵。

相关问题