DTHROTTLEV1.0 4-NOV-2021 10:05 VSI C V7.4-002  $READONLY$i,$CODE$# $LITERAL$`$LINK$p $DATA$0J THROTTLEBEGIN0J0"THROTTLECONTROL0J THROTTLEEND0J THROTTLEINIT8JPTHROTTLEMONITORRESET0JpTHROTTLERELEASE0JP%THROTTLEREPORT0J@THROTTLETIMEOUT0J THROTTLEZERO( THROTTLEBUSYMETRICTOTAL8THROTTLEBUSYMETRICTOTAL( THROTTLEBUSYMETRICTOTAL503@THROTTLEBUSYMETRICTOTAL503   THROTTLETOTAL0 THROTTLETOTAL   THROTTLEARRAY0 THROTTLEARRAY @6= =0;#~^^GGQ PB@ G]]4G #/k/// B4׀J`B"CB"(bG@Zk"b#G]] #/G0// #~^[Z2q BG QB@B3D,Z# //..: #@G@@GU JTJ>>..<"@@GW JVJ>>z.:/"S xJ@GY8Kz>#:?:,.A :H:z..S zJWJz>>:,:/A 8HY8K|#:<:?z..S zJUJz>>:,.A 6HWJ4":<>Cz.@:/S zJY:KCz>@:??:,<.A 4HUJ$"?:<<>7z.4.S vJWJ,"7z>4>;:,8:/A :HY:K;:<8:?3z.0.S zJUJ3z>0>/:,,.A 6HWJ"/:<,>+z.(:/S zJY:K+z>(:?':,$.A 4HUJt"':<$>z..S zJWJz>>:,|:/A 8HY8Kd#:<|:?wz.t.S tJUJl"wz>t>{:,x.A :HWJ{:sz.p:/S zJY:Ksz>p:?o:,l.A 4HUJo:kz.h.S zJWJkz>h>g:,d:/A 8HY8K#g:>:,.A 6HWJ":<>z.:/S xJY8K#z>:?:,.A :HUJ:<>z..S zJWJz>>:,:/A 8HY8K:<:?z..S zJUJZ#z>>:,. @A 6HWJ:<>/# @:/://z""0@Y :KXK:??Z..R SJTJZ>>.:,V JZ">A5H:<://Y :K:?: XK?.z.T J>SzJz>..V JUJ>>://Y :K:? @XK@Z#?.z.T J>SrJz>/G]{# #/{#//#4G4G~^@[^~ (0޴8@H>P^X~`hG {GHb@Zk8"GG('`.$@.$ "0"S qJRQJ'`>$@>@B/."X KWJ?>@/ /Z @KY K@? ?et`//)$ '@j..P0B*#./0 jJT JtFV KJCDX KWJ@B H`HGF?>J/j/p..YK[ yK[G@ JaJC F1CT JSaJYF !Jq!JFqF>p><@0.3.JW J F C/(`///K/k/ #XK[ xK[G+, .+HP J0D BGb"?"G"Gb@ZkM+,P .M ""PB_"XbtG HP J 0DG@Zk C3 .0*,P JA*H3 >0*< j.J.S jJRJJ j>J>0@ @@G]b]}4G4G (0ݤ8@H=P]X}`hp#k//#L4G ^~(^0~8@H޴P[X`>h^pG0GG4G#$Eb0 B$_d<@_[[MLYpY/c@Zk"?#PBXbq="[\$" _]='.$. 4HV Jw4HUJFF'>$>@Zk " X$ /c@$.' .S !JJSF0@BQ !JPJ AJrAJ3FF' >$>PB4G4GXb@Zk<"GHbB! HbS." @#?FSJTGP@F' `""// `<âG_FD_"G/@ZkpB"GTG`<TG@DHLPTxbX㳰@Zk0BGG`B""G8b@Zk4G"#0F.3f.FJS fJSFC//BGb '"M"@Zk// M/P'/KY 7KGC////0.3&.JQ &JFC/4///g..G"rJT JtF@G/g/GK[ gK[GM.P/M JX KFC0B "#"4GtG8b@Zk .',"P JA'H >'<g.G.S gJRGJg>G>..V JUJ>>LB4G4Gb@Zk0.3&.{HM@"P.M`.GJQ &JFT JSrJ "#" 2Hu2H4GFuFP>M`>3F/0&/ HZ FK@GY&K3F?0B;G8b0&?tG/@Zk&, . &" &# F.f. ..&HP J0DQJS qJ0@SFV JUJ HwHCFF @ H >>aH f/ F/[ yKZYKpGAGf? F?g. .V JgJFT J0BSgJ JuJFuF >g>GG& .&/ G&.,[ !KJ[GY !KPJ0@C&J@ H AKzAK F;GFC&?>Dâ @/` 4G /@"&./7JX K8F@ 4B P#4G &/F/;6@"0KZ PK:GC B/LC!AB6@ @4@F Gb.J@"" "#ECB#pb#C$`<CP`F1E`""GTEDFf"F@L#P/&/BK>(~GV_"GY 3K"bGGC ~TG"@ZkC#@"#@Eg#).'.HC.J =Q 'JF`""CJ " 2@PFF4`F`<CGFDGBTGG-,9E"[I@ H@E^>u_"("TGbC@Zk .#.F!&/&,"#&.F. W JJFU JTJ0B*KA *H JvJDFF0JR PJ#> >F/0@2F HZ XKC{HY8KDG @;GF? HjH&?&,-A %HHI1D E&<=g..G"V JrJFT J0BSrJ JuJFuF>g>B4G4Gb/@Zkp"4GPBXb0-3D-@ DIIDJ DIHI0@ HgH @EE3D=0=!A$@!.A."T PJ0JtFR PJQ0J0`B pJspJ4GTF3FA>!>@Zk`B4G4"#"ctGhb@ZkXC@T//@BGTGGtGHb/@Zk 2 4-7,G4 4Gb#IE HEC@2 //_ -.&.F..IA JE&JR FJ0 @2FU JTJ &Hv&HCFF 0@ &H>> F/{&H&/Z FK@GF?Y&K;G&?,,H HH (EE HDH 0 A 'Ii'IDD<> ð@Zk0BGG`B""G8b¤/@Zkd4G4GLBb0@__[[/MLYpY/c@ZkPB?#="Xb(,+,I HH ED HEH0A IhIDD+<(<[\ _F$r"]='.$. 3HU Jv3HTJFF'>$>/@Zk "Ơ$f Xc@$,',H HHD0@E H HDHgHDD'<$D>E/e/EKX eKF[ eKCZEK61B JaJpGAGe?E?B4Gb"@Zk"J`<c# e#"",GDGTGHPDD<@ _"%/E/H..8KZ XKJW J:GBFCC޶"Gb4G@Zk`<#GP#@c"LC.G./$/BJ>^_"""V JK~TGFY 7K¦DGCtGbC "@Zk`<"4d#@DHLPTX/$/KY 7KG`C/;@4,7$,HA ;HDC/0 ///0D.3d.aDJS dJSF"C!///0BG8b %"M#@Zk M%/P.8KW J7GC!/??D2%.E.Hc%JR EJ2FC BF!/??D "4.7D/G4"JZ TKFCt BTG4"(b#"@ZkL DP#D.d.DJ @S dJ@SFC @GGb#4G@G]]} (0@#k/<0[#  ~^^~R1 J; (GGG8[QB<_";"t.GtJP`FF Xh;#FGGTGx"GG@b/@ZkXb,$ C,./$.S !JJSFQ !JPJ0@B AJrAJ3FFG/$>,>L.DâP/$/KY $KG4BBGTGC @/TCtG/ @XG]]} (0#k/BGtGGtGb@ZkG]]} (0#k/GG4G($,+.R J$H2FP JA$H0 B $Jq$JF1DGG+>($<GG]b#]} (0#//# ^~(^0~8@HGG#GG<p]3`J@$ 0" 0 0e/3.eKP JpGC/@BGHb $"@ZkM$.PD.M"0JR PJ2FC pBG?""b"GxbB/@ZkPb""d# """CP`<â0,DTGGD0HP D?DF@_"/.$,$/D/HJA ;H$KZ DKFb:G BC>C>("G(bTGC@Zk//`<#/G.."/%/GP#@cLCJV J BKY 7KFGCGC>^""~_"TG( " =  D(b@Zk0BTG4"#"8b@ZkE.e. %"@JP `J0DS qJRQJC/ 1@ HtHuFTFe>E>D/d/"VKX vKFC 61B$# J[ yKaJZYKpGAGd?D?B4G"b@ZkBGTGbK///@Zk$.'.$"E/.E.e.X JJFV JUJ0BEKP J JwJ0DFFEJS eJ'>$>e/0@SF H[ eKCaHZEKpG @AGe? HuHE? .e.T JSeJFuF>e>/$,KXKY $HA $HF0B JpJ9DG$<?BZ4G"Bb@Zk-`<GG@DHLPT㳨bX./JWJZ KX K:G0 C %Ky%KGBFTG?> @Zk`BGGB""Ghb@ZkBGTGb@ZkpBGtGGtGxb/@ZkG ](]0}8@HP#k/p#C^~^ ~(08޴@HP>X^`~hpx޵GۤGGG#GGGC GBP/N///̢B/6/"46 KY 7KG;4V/7v/AK[ aK [G C4///͡` .#F* 0B" d.dJG`_"tG8b@Zk B."%,GG4GGGG(b%H /@Zk/// GGpb#GB_0@/ `///ơ0A (AΡ A@".!.JQ !J}`FB"PB"@"""rFn_"TGX"Gb @ZkG]G] }(08ݤ@HP=X]`}hpxݥ#/k///#tG;"^~^~޴h[>^~޵G hGGGpb@ZkG ! G 4Gbc//+XBG4G`b )B@ZkHB G""?"!@Zk]GB"  - ]=Gb#}G !!b-:B-TG@ZkBGTGb!-!@Zkl", ,, .-HP J0D/..JV JFC L/#l/LK[ lKC$ "[G /,,-!/HM I-D...JU JF n$ /'L/KZ PKGB,,//-G KM I-GTG(,.+.,JT J4F.. /JX K , Fnl/-lKM I mGb - ,.IQ ,J@!EG$!$ ..JV JF(.@Zk,,"TGL.l. ,,# .BbQJS qJ,HP JSF0DCC/@Zk0TG,"L.l.$,,' .BbQJS qJ/HP JSF,!0DCC/@Zk4TG,"L.l.,,,/ .BbQJS qJ/HP JSF0DCC@Zk8TG,"L.l.(,,+ .BbQJS qJ,HP JSF0DCC@Zk8BG="b"<G-"G@b@Zk(BGG8"GGG"0b@ZkxBGGG0"b"Gb@Zk0-3-G"(BGGG0bGGIO I E CR/@Zk0-3-IM I E C/>///@b  "b",.L.0JR PJ2FG=" ..JV JFG,/ L/,KZ LK>":G8BG@Zk(B( "GGGGG"0b/@ZkxBGGGA"b"Gb@ZkM-P-M!IM I E C(BGGG "GGG0b@Zk0@ (A 0@A @/¥BGGtG."b@ZkbBGb!X (+! =}@Zk8B="Gb"GT"G@b/@Zk(BG"GGG"G0b@ZkxBGb"GGV"Gb@ZkxB4G C"x""ñGtGb@ZkBG4Gb@ZkG]]}ݤ=]}ݥ#k4 tG VMREALLOC4 b# VMREALLOC4 @ VMREALLOC<GINSTANCEMUTEXLOCK<b#PINSTANCEMUTEXLOCK<@INSTANCEMUTEXLOCK4G ERRORNOTICED4b#P ERRORNOTICED4@ ERRORNOTICED,G VMFREE,b#PVMFREE,@ VMFREE<XGINSTANCEMUTEXUNLOCK <db#PINSTANCEMUTEXUNLOCK<INSTANCEMUTEXUNLOCK<GX INSTANCEMUTEXLOCK< b#INSTANCEMUTEXLOCK<T @X INSTANCEMUTEXLOCK49d G MATH$MODF_T4:h b# MATH$MODF_T49 @ MATH$MODF_T< G$ INSTANCEMUTEXUNLOCK< b#INSTANCEMUTEXUNLOCK< @$ INSTANCEMUTEXUNLOCK4'< G WATCHTHIS4(H b# WATCHTHIS4' @ WATCHTHIS,! G MSGFOR," b#MSGFOR,! @ MSGFOR4- G ERRORGENERAL4. b# ERRORGENERAL4- @ ERRORGENERAL4+@ GX DECC$STRCMP4,H b# DECC$STRCMP4+T @X DECC$STRCMP,7 G4 STRZCPY,8, b#STRZCPY,70 @4 STRZCPY,= G VMGET,> b#VMGET,= @ VMGET,7 G$ STRZCPY,8 b#STRZCPY,7 @$ STRZCPY4'XG WATCHTHIS4(b# WATCHTHIS4'@ WATCHTHIS4'Gh WATCHTHIS4(Tb# WATCHTHIS4'd@h WATCHTHIS<xGINSTANCEMUTEXLOCK<b#INSTANCEMUTEXLOCK<@INSTANCEMUTEXLOCK<G,INSTANCEMUTEXUNLOCK<b#INSTANCEMUTEXUNLOCK<(@,INSTANCEMUTEXUNLOCK4;,GL LISTADDTAIL4<Db# LISTADDTAIL4;H@L LISTADDTAIL4/dG HTTPDTIMERSET40xb# HTTPDTIMERSET4/@ HTTPDTIMERSET<GINSTANCEMUTEXLOCK<b#INSTANCEMUTEXLOCK<@INSTANCEMUTEXLOCK<GDINSTANCEMUTEXUNLOCK<b#INSTANCEMUTEXUNLOCK<@@DINSTANCEMUTEXUNLOCK,!|GMSGFOR,"b#MSGFOR,!@MSGFOR4-G ERRORGENERAL4.b# ERRORGENERAL4-@ ERRORGENERAL<GHINSTANCEMUTEXLOCK< b#INSTANCEMUTEXLOCK<D@HINSTANCEMUTEXLOCK49LG MATH$MODF_T4:Xb# MATH$MODF_T49@ MATH$MODF_T<4GHINSTANCEMUTEXUNLOCK<@b#INSTANCEMUTEXUNLOCK<D@HINSTANCEMUTEXUNLOCK4+G( DECC$STRCMP4,b# DECC$STRCMP4+$@( DECC$STRCMP4XG| ERRORNOTICED4pb# ERRORNOTICED 4x@| ERRORNOTICED<#G$INSTANCEGBLSECDECRLONG<$b#INSTANCEGBLSECDECRLONG<# @$INSTANCEGBLSECDECRLONG4'G WATCHTHIS4(b# WATCHTHIS4'@ WATCHTHIS4'GT WATCHTHIS4(<b# WATCHTHIS4'P@T WATCHTHIS4+G DECC$STRCMP4,b# DECC$STRCMP4+@ DECC$STRCMP4)G LISTREMOVE4*b# LISTREMOVE4)@ LISTREMOVE4'G WATCHTHIS4(b# WATCHTHIS4'@ WATCHTHIS40b# HTTPDTIMERSET4/G HTTPDTIMERSET4/ HTTPDTIMERSET4/G HTTPDTIMERSET40b# HTTPDTIMERSET4/@ HTTPDTIMERSET4+G DECC$STRCMP4,b# DECC$STRCMP4+@ DECC$STRCMP4,GT ERRORNOTICED4Db# ERRORNOTICED4P@T ERRORNOTICED4'G WATCHTHIS4(b# WATCHTHIS4'@ WATCHTHIS4'`G WATCHTHIS4(b# WATCHTHIS4'@ WATCHTHIS4)G LISTREMOVE4*b# LISTREMOVE4)@ LISTREMOVE<#t G INSTANCEGBLSECDECRLONG<$ b#INSTANCEGBLSECDECRLONG<# @ INSTANCEGBLSECDECRLONG4% G SYSDCLAST4& b# SYSDCLAST4% @ SYSDCLAST<1!G!INSTANCEGBLSECINCRLONG<2!b#INSTANCEGBLSECINCRLONG<1!@!INSTANCEGBLSECINCRLONG,"!b#MSGFOR,!,"GL"MSGFOR,!H"@L"MSGFOR4-L"Gl" ERRORGENERAL4.d"b# ERRORGENERAL4-h"@l" ERRORGENERAL4%l"G" SYSDCLAST4&|"b# SYSDCLAST4%"@" SYSDCLAST4/"G" HTTPDTIMERSET40"b# HTTPDTIMERSET4/"@" HTTPDTIMERSET,5#G$STRSAME,6#b#0STRSAME,5$@$STRSAME<3$GD$STRINGMATCHANDREGEX<40$b#0STRINGMATCHANDREGEX<3@$@D$STRINGMATCHANDREGEX4'$G$ WATCHTHIS4($b#0 WATCHTHIS4'$@$ WATCHTHIS4|%G%ADMINPAGETITLE4%b#ADMINPAGETITLE4%@%ADMINPAGETITLE<%G &MAPURL_THROTTLERULE<&b#MAPURL_THROTTLERULE<&@ &MAPURL_THROTTLERULE4 &G,&OTS$ZERO p 4(&@,&OTS$ZERO<|&b#METACONSHOWSECONDS<&G&METACONSHOWSECONDS<&@&METACONSHOWSECONDS<&G&METACONSHOWSECONDS<&b#METACONSHOWSECONDS<&@&METACONSHOWSECONDS4p'G(( PERCENTOF324'b# PERCENTOF324$(@(( PERCENTOF324D(Gt( PERCENTOF324H(b# PERCENTOF324p(@t( PERCENTOF324(G( PERCENTOF324(b# PERCENTOF324(@( PERCENTOF324(G ) PERCENTOF324(b# PERCENTOF324)@ ) PERCENTOF324()GT) PERCENTOF324,)b# PERCENTOF324P)@T) PERCENTOF324T)G|)FAOCHECK4t)b#FAOCHECK4x)@|)FAOCHECK,|)G)FAOLSAK,)b#FAOLSAK,)@)FAOLSAK4)G) ERRORNOTICED4)b# ERRORNOTICED4)@) ERRORNOTICED,)G*FAOLSAK,)b#FAOLSAK,*@*FAOLSAK4@*b#FAOCHECK4*G*FAOCHECK4*@*FAOCHECK,*G*FAOLSAK,*b#FAOLSAK,*@*FAOLSAK4*G + ERRORNOTICED4+b# ERRORNOTICED4+@ + ERRORNOTICED,,+GT+FAOLSAK,L+b#FAOLSAK,P+@T+FAOLSAK4 x+G+FAOTONET4+b#FAOTONET4 +@+FAOTONET4+G+ ADMINREFRESH4 +b# ADMINREFRESH4+@+ ADMINREFRESH4+G+FAOCHECK4+b#FAOCHECK4+@+FAOCHECK,+G,FAOLSAK,,b#FAOLSAK,,@,FAOLSAK4,GD, ERRORNOTICED4<,b# ERRORNOTICED4@,@D, ERRORNOTICED< D,Gh,RESPONSEHEADER200< `,b#RESPONSEHEADER200< d,@h,RESPONSEHEADER2004h,G|,ADMINEND4t,b#ADMINEND4x,@|,ADMINEND [=`S/httpd/-/admin/report/request/throttle/httpd/-/admin/control/throttle/terminateX=8)/httpd/-/admin/control/throttle/release=0&/httpd/-/admin/control/throttle/zero=H=(none) =@2THROTTLE set:!UL,!UL,!UL,!UL current:!UL,!UL !AZ(=8/THROTTLE user:!AZ per:!UL current:!UL,!UL !AZX=(THROTTLE control !AZed !ULx= THROTTLE timeout !AZ=@2THROTTLE set:!UL,!UL,!UL,!UL current:!UL,!UL END=8/THROTTLE user:!AZ per:!UL current:!UL,!UL END=3+THROTTLE per-user NO USER (authorization) 7 THROTTLEBUSYMETRICTOTAL ERRORNOTICED INSTANCEMUTEXUNLOCK= THROTTLE@7INSTANCENUMBER7ERRORSANITYCHECK=02;=pL 7 ACCOUNTINGPTR7 THROTTLETOTAL7 THROTTLEARRAY7 THROTTLEBUSYMETRICTOTAL503 INSTANCEMUTEXLOCKVMFREE=02;= 4 =02;=   VMREALLOC7MAPPINGMETAPTR RESPONSEHEADER200=/!UL0 FAOTONETADMINEND= Throttle Reporth=?p METACONSHOWSECONDS PERCENTOF32;=02P%;=X ;FAOLSAKFAOCHECK8OTS$ZERO MAPURL_THROTTLERULEADMINPAGETITLE= text/html  ADMINREFRESH=@!MSGFOR7 REQUESTEXECUTEPOSTTHROTTLE7 REQUESTEND #INSTANCEGBLSECDECRLONGWATCH Pe5= PROCESS% SYSDCLAST=0 2p;=P(< ' WATCHTHIS) LISTREMOVE+ DECC$STRCMP=BUSY- ERRORGENERAL/ HTTPDTIMERSET 1INSTANCEGBLSECINCRLONG=02";=L 3STRINGMATCHANDREGEX5STRSAME= terminat=releas=02@;= 08 QUEUE=02;=@,< =0 2;= D ?7STRZCPY= ->QUEUE=B9 MATH$MODF_T; LISTADDTAIL= ->QUEUE->P=VMGET  =

=xi
Queued Processing Per-User
Path / UserTotalBusy TotalCurMaxFIFOT/OqT/Ob CurMax CurMax 

*throttle=n1[/u1],n2,n3,n4,to1,to2
n1, concurrent requests before queuing
u1, per-user concurrent requests before queuing
n2, concurrent requests before FIFO processing
n3, concurrent requests before FIFO processing ceases again
n4, concurrent requests before immediate "busy"
to1, maximum period queued before processing (if not limited by n3)
to2, maximum period queued before "busy" (from expiry of any to1)
**all percentages are of path total
***user data is queued, processing, total

Requests
!AZ 8=!3ZL!AZthrottle=!UL!&@,!UL,!UL,!UL,!AZ,!AZ!&L!&L !&L!&L!&L!&L!&L!&L !&L!&L !&L!&L !UL%!UL%!UL%!UL%!UL% =( = ( =ME!AZ !UL,!UL,!UL   MATH$MODF_T DECC$STRCMP INSTANCEGBLSECDECRLONG INSTANCEGBLSECINCRLONG INSTANCEMUTEXLOCK INSTANCEMUTEXUNLOCK METACONSHOWSECONDS STRINGMATCHANDREGEXSTRZCPYSTRSAMEADMINENDADMINPAGETITLE ADMINREFRESH ERRORGENERAL ERRORNOTICEDFAOLSAKFAOCHECKFAOTONET HTTPDTIMERSET MAPURL_THROTTLERULEMSGFOR REQUESTEND(REQUESTEXECUTEPOSTTHROTTLE RESPONSEHEADER200 LISTADDTAIL LISTREMOVE PERCENTOF32VMGETVMFREE VMREALLOC WATCHTHISINSTANCENUMBER ERRORSANITYCHECK ACCOUNTINGPTRMAPPINGMETAPTRWATCH SYSDCLASTOTS$ZERO H$MO