2010-10-11 46 views
2

我有一个应用程序当前正在IIS 6.0上运行一个工作进程(默认设置)。我试图确定创建网络花园是否会提高性能。我读过一堆文章,说网络花园不适合每个人(因为它重复资源,缓存不共享等)。我找不到一篇文章明确说明了使用网络花园的合理性(微软的网站提供了三点要点,但没有具体的例子)。我的情况如下:何时创建Web园区

  1. 我们在给定时间最多可以有40个并发用户。
  2. 我们的应用程序执行一系列计算(计算量为1,000s),可能需要10分钟才能完成。
  3. 我们有multipe数据库调用,其中一些可能需要30秒才能完成。

将创建一个网络花园提高性能,或者我应该增加当前工作进程中的线程数?什么时候应该是什么时候使用网上花园的例子?如果当前工作进程中的线程正在执行计算(运行.net代码)和/或调用数据库,其他线程是否可以同时运行(我假设是)。

谢谢。 Ryan

回答

2

就我个人而言,当我的web应用程序需要频繁的工作流程回收时,我已经走过了使用网络花园的路线。

在这种特殊情况下,我们需要经常回收工作进程,因为我们使用CodeDOM动态发布程序集,随着更多程序集的加载,定义会产生内存泄漏。

有一个网络花园帮助避免每次回收工作进程时服务器响应延迟。