云计算之路-阿里云上:“黑色1秒”最新线索——w3tp与w3dt

时间:2021-03-06 04:28:31

向大家分享一下最近排查“黑色1秒”问题的进展,“黑色1秒”的问题表现详见什么是黑色1秒

1. 发生在w3wp进程内

云计算之路-阿里云上:“黑色1秒”最新线索——w3tp与w3dt

判断依据:“黑色1秒”期间,http.sys的HTTP Service Request Queues\ArriveRate正常,W3SVC_W3WP\Requests/Sec正常。

2. 请求未进入.NET线程池

aaarticlea/png;base64,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" alt="" />

判断依据:“黑色1秒”期间静态文件的请求也不能被处理,如果“黑色1秒”发生在.NET线程执行过程中,静态文件是由非托管模块处理的,应该不受影响。

3. 发生在处于user-mode的IIS核心模块

http.sys处于kernel-mode,处于user-mode的处理请求的IIS核心模块有:w3tp->w3dt->iiscore->webengine->wbhst_pm,在C:\Windows\System32\inetsrv中都有对应的dll文件。

IIS核心模块请求处理流程如下(自下而上,来自application pool crashes in IIS 7.5):

clr!ClrCreateManagedInstance
webengine4!LegacyActivationShim::ClrCreateManagedInstance
webengine4!GetIsapiProcessHost
webengine!GetIsapiProcessHost
wbhst_pm
wbhst_pm!GetProtocolManager
w3wphost!AppHostInitialize
w3wphost!IPM_MESSAGE_PIPE::operator=
iiscore!W3_SERVER::GetProtocolManagerCustomInterface
webengine4!InitClrHost
webengine4!CMgdEngGlobalModule::OnGlobalApplicationResolveModules
iiscore!VIRTUAL_MODULE::GlobalDoWork
iiscore!W3_SERVER::GlobalNotify
iiscore!W3_APPLICATION::ResolveModules
iiscore!W3_APPLICATION::SetupNotificationContext
iiscore!W3_CONTEXT::SetupStateMachinePhase2
iiscore!W3_CONTEXT::SetupStateMachine
iiscore!W3_MAIN_CONTEXT::StartNotificationLoop
iiscore!W3_MAIN_CONTEXT::OnNewRequest
w3dt!UL_NATIVE_REQUEST::DoStateProcess
w3dt!UL_NATIVE_REQUEST::DoWork
w3dt!OverlappedCompletionRoutine
w3tp!THREAD_POOL_DATA::ThreadPoolThread
w3tp!THREAD_MANAGER::ThreadManagerThread

4. w3tp与w3dt

w3tp(w3 thread pool)是IIS的线程池,在注册表(HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters)中有一个设置项ThreadPoolStartDelay,默认值是1秒。

ThreadPoolStartDelay is how long the thread pool should set the timer for when zero threads are waiting on the completion port.

如果有线程在等待完成端口,是这样的情况(以下截图来自Process Explorer):

云计算之路-阿里云上:“黑色1秒”最新线索——w3tp与w3dt

w3dt(可能是w3 data transfer的缩写)是一个完成端口(Completion Port)处理程序,从http.sys的队列(kernel-mode)中将请求取出至w3wp进程(user-mode)的本地队列。

云计算之路-阿里云上:“黑色1秒”最新线索——w3tp与w3dt

5. 猜想

在w3dt将请求从http.sys的队列搬至w3wp本地队列后,本应触发iiscore!W3_MAIN_CONTEXT::OnNewRequest;可是这时某种未知原因(怀疑是CPU的原因)造成w3tp认为"zero threads are waiting on the completion port",将Timer频率改为了1秒,结果1秒后才触发OnNewRequest,将队列中请求转交至后续处理环节;而在这1秒期间,ASP.NET由于没有收到请求,于是QPS为0。

感慨:网上关于IIS核心模块的资料实在太少了,IIS又不开源,只能靠“蒙猜试”了。