Windows WEB

w3wp.exe 프로세스의 CPU 점유

2008.05.15 02:22

hostway 조회 수:37033

w3wp.exe 프로세스의 CPU 점유와 관련한 문의가 있어 알려 드립니다.

우선 문제가 발생한 웹사이트를 찾아서 확인 하셔야 합니다.

iis6.0에서는 HTTP프로토콜 스택을 커널단에서 처리하고,
각 사이트 마다 요청을 별도의 응용프로그램풀로 처리를 합니다.
이 역할을 w3wp(워커프로세스)가 해줍니다.

사이트가 여러개일 경우 작업 관리자에 w3wp.exe 프로세스가 여러개 확인 됩니다.
CPU 점유가 높은 w3wp.exe 프로세스를 보시면 PID 확인이 가능 합니다.
(단, 각각의 사이트를 서로 다른 응용프로그램풀로 운영 하셔야 합니다.)

명령프롬프트를 여시고 C:WINDOWSsystem32 로 이동 하신 후 iisapp를 실행 하시면
문제의 PID가 가지고 있는 응용프로그램풀을 확인 할수 있습니다.
확인된 응용 프로그램풀로 문제가 있는 웹사이트를 확인 하실 수 있습니다.
웹사이트가 확인 되시면 근래의 작업 사항등을 되집어가며 문제를 확인 하시기 바랍니다.

C:WINDOWSsystem32>iisapp /?
Description: list IIS application pools and associated worker processes.
             Recycle application pools.

Syntax: IIsApp.vbs [{ /a <app_pool_id> | /p <pid> } [/r] ]

Parameters:

Value              Description
/a <app_pool_id>   Specify an application pool by name. Surround
                   <app_pool_id> with quotes if it contains spaces.
                   If used alone without an accompanying action,
                   IIsApp.vbs will report PIDs of currently running
                   w3wp.exe processes serving pool <app_pool_id>.
/p <pid>           Specify a process by process ID.쟅f used alone
                   without an accompanying action, IIsApp.vbs will
                   report the AppPoolId of the w3wp process specified
                   by <pid>. When a PID is specified with /r, that PID
                   is mapped to an application pool and the action is
                   taken upon the application pool.쟅f a PID is given
                   for a web garden, i.e. an application pool served
                   by more than one w3wp, then all w3wp뭩 for that
                   application pool will be acted upon.
/r                 Recycles the application pool.

DEFAULT: no switches will print out the PID and AppPoolId.

Examples:

IIsApp
IIsApp /p 2368
IIsApp /a DefaultAppPool /r
IIsApp /p 2368 /r

[예제]
C:WINDOWSsystem32>iisapp
W3WP.exe PID: 4512   AppPoolId: DefaultAppPool
W3wp.exe PID: 2608   AppPoolID: testPool