必要时调整应用程序每个辅助进程的线程数

原创 2004年10月25日 00:18:00
ASP.NET 的请求结构试图在执行请求的线程数和可用资源之间达到一种平衡。已知一个使用足够 CPU 功率的应用程序,该结构将根据可用于请求的 CPU 功率,来决定允许同时执行的请求数。这项技术称作线程门控。但是在某些条件下,线程门控算法不是很有效。通过使用与 ASP.NET Applications 性能对象关联的 Pipeline Instance Count 性能计数器,可以在 PerfMon 中监视线程门控。
  当页面调用外部资源,如数据库访问或 XML Web services 请求时,页面请求通常停止并释放 CPU。如果某个请求正在等待被处理,并且线程池中有一个线程是自由的,那么这个正在等待的请求将开始被处理。遗憾的是,有时这可能导致 Web 服务器上存在大量同时处理的请求和许多正在等待的线程,而它们对服务器性能有不利影响。通常,如果门控因子是外部资源的响应时间,则让过多请求等待资源,对 Web 服务器的吞吐量并无帮助。

  为缓和这种情况,可以通过更改 Machine.config 配置文件 <processModel> 节点的 maxWorkerThreads 和 maxIOThreads 属性,手动设置进程中的线程数限制。

  注意 辅助线程是用来处理 ASP.NET 请求的,而 IO 线程则是用于为来自文件、数据库或 XML Web services 的数据提供服务的。
  分配给这些属性的值是进程中每个 CPU 每类线程的最大数目。对于双处理器计算机,最大数是设置值的两倍。对于四处理器计算机,最大值是设置值的四倍。无论如何,对于有四个或八个 CPU 的计算机,最好更改默认值。对于有一个或两个处理器的计算机,默认值就可以,但对于有更多处理器的计算机的性能,进程中有一百或两百个线程则弊大于利。

  注意 进程中有太多线程往往会降低服务器的速度,因为额外的上下文交换导致操作系统将 CPU 周期花在维护线程而不是处理请求上。

版权声明:本文为博主原创文章,未经博主允许不得转载。

应用程序,任务,进程,线程

Android应用程序模型:应用程序,任务,进程,线程 内容来自:http://blog.csdn.net/iefreer/article/details/4460196 Android应...
  • zhangdong305
  • zhangdong305
  • 2015年04月22日 16:25
  • 559

关于linux系统最大进程数和单进程最大线程数的测试

我的系统:RedHat企业7 64位 内存6G ulimit -a查看用于shell启动进程所占用的资源默认设置 一.最大进程数 1.使用命令ulimit -u查看软限制,我的为7807 ...
  • derkampf
  • derkampf
  • 2017年03月02日 22:08
  • 2874

对于并发线程数的设置的一些理解

一些常见问题(1)线程数是不是越大越好? 肯定不是的,首先服务器的cpu核数有限,同时并发的线程数是有限的,1核cpu设置10000个工作线程是没有意义的;线程的切换是有开销的,如果线程切换过于频繁...
  • Megustas_JJC
  • Megustas_JJC
  • 2017年08月29日 20:14
  • 794

Linux 中统计一个进程的线程数

如果你想看到 Linux 中每个进程的线程数,有以下几种方法可以做到这一点。   方法一: /proc proc 伪文件系统,它驻留在 /proc 目录,这是最简单的方法来查看任何活...
  • lh2016rocky
  • lh2016rocky
  • 2017年03月16日 16:28
  • 1726

tomcat 调整线程数

调整线程数  另外一个可通过应用程序的连接器(Connector)进行性能控制的的参数是创建的处理请求的线程数。Tomcat使用线程池加速响应速度来处理请求。在Java中线程是程序运行时的路径,是在一...
  • starnight_cbj
  • starnight_cbj
  • 2010年12月14日 14:26
  • 7882

Linux最大线程数限制

研发环境上的Linux项目启动报错:Caused by: java.lang.OutOfMemoryError: unable to create new native thread 开始以为是...
  • u013673976
  • u013673976
  • 2016年06月30日 11:02
  • 5382

如何查看进程的信息(线程数)

三种方法: 1。 使用top命令,具体用法是 top -H         加上这个选项,top的每一行就不是显示一个进程,而是一个线程。 2。 使用ps命令,具体用法是 ps ...
  • shandianling
  • shandianling
  • 2013年05月19日 17:22
  • 9369

统计Java进程开启的线程数的N中方法

引言: 在Java语言中,线程被广泛的使用,在大部分的情况下,大家其实都是不关心到底在Java Application中创建了多少个线程的,那该如何去查看进程到底启动了多少个线程呢?本文将给出若干种...
  • blueheart20
  • blueheart20
  • 2017年12月26日 18:35
  • 307

进程的一生——请求调页篇

本文主要解答了三个问题: 1、 注:本文所有的的内核代码都是来自于kernel3.14.54,读者可以未经作者允许随意转载,但请保证文章的完整性。 内存管理部分的内容繁杂没有接构型,为了好理解一...
  • sium__
  • sium__
  • 2015年11月07日 12:14
  • 926

查看某个进程下的线程数量Linux

使用 ps -Lf pid 查看对应进程下的线程数。
  • rufidmx
  • rufidmx
  • 2012年10月04日 09:11
  • 3481
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:必要时调整应用程序每个辅助进程的线程数
举报原因:
原因补充:

(最多只允许输入30个字)