Garso triktis ir VPN pauzė patenka į tas pačias dešimt sekundžių, o kokia nors paslaugų programa praneša apie didelį skaičių, pažymėtą DPC vėlavimu. Kyla pagunda daryti išvadą, kad tvarkyklė lėtina tunelį, arba kad tunelis apkrauna tvarkyklę. Nė viena iš šių išvadų neseka iš to skaičiaus.

Čia dalyvauja trys matavimai, ir jie nesidalija ta pačia riba.

Trys skaičiai, trys ribos

Atidėtas procedūros iškvietimas – tai darbas, kurį tvarkyklė atideda iš savo pertraukčių apdorojimo programos, o laikas, praleistas tų procedūrų viduje, yra procesoriui vietinis matavimas, priskiriamas moduliams ir funkcijoms. Aido kelionė pirmyn ir atgal – tai laiko stebėjimas lizde, kurį sukuria tinklo stekas ir nuotolinis atsakiklis. Atsijungimo įvykis – tai būsenos perėjimas, kurį užregistruoja klientas. Kiekvienas atsako į klausimą, į kurį kiti negali, o vienodi vienetai nepadaro jų keičiamais.

Naudinga disciplina – įvardyti ribą prieš skaitant reikšmę. Parašykite vienetą ir ribą greta. Jei įrankis praneša apie milisekundes, paklauskite, kokių milisekundžių: laiko procedūros viduje, laukimo vykdyti, ar laiko iki atsakymo atėjimo.

Didelis skaičius vienoje kategorijoje yra užuomina, niekada diagnozė.

Perskaitykite apibrėžimą už antraštės

Paslaugų programos skiriasi tuo, ką vadina vėlavimu. Vienos praneša tvarkyklės procedūrų trukmę, kitos – planavimo vėlavimą, ir šie du dydžiai gali judėti priešingomis kryptimis tame pačiame kompiuteryje. Prietaisų skydelis, kuris vieną iš jų vadina tiesiog DPC vėlavimu, pasakė mažiau, nei atrodo. Todėl du skydeliai gali nesutarti dėl kompiuterio, kuris visai nepasikeitė.

Tas pats atsargumas galioja viename analizės įrankyje. Įskaitinė trukmė seka procedūrą nuo įėjimo iki išėjimo, o išskirtinė trukmė sumuoja tik tuos fragmentus, kuriuose pati procedūra vykdė. Pasirinkus neteisingą stulpelį, iškvietėjas tampa kaltu.

Vietinis tvarkyklės darbas ir tinklo vėlavimas taip pat sąveikauja nesusiliedami. Per didelis su pertrauktimis susijęs aktyvumas gali atidėti laiko požiūriu jautrų darbą kompiuteryje, o perkrautas kelias gali atidėti paketus, ir abu gali būti tiesa per vieną matomą pauzę.

Įdėkite kiekvieną stebėjimą į vieną langą

Pėdsakas naudingas tik tada, kai skaitote intervalą, kuriame yra simptomas. Įrašykite pėdsaką, kliento įvykį ir programos gedimą su laiko žymomis, po to pažiūrėkite į tas pačias sekundes visuose trijuose. Valandos pėdsako maksimumas ir vėliau po pietų įvykęs atsijungimas yra du nesusiję faktai.

wpr -start CPU -filemode
wpr -stop vpn-trace.etl
xperf -i vpn-trace.etl -a dpcisr -o dpc.txt

Tada atidarykite pėdsaką analizės įrankyje ir surikiuokite pagal trukmę tame lange, o ne pagal visą įrašą. procesoriaus analizės gairės aprašo DPC/ISR trukmės vaizdą, kuris laiką priskiria moduliams ir funkcijoms.

Patvirtinkite, kas iš tikrųjų nutiko tuneliui, kol ten esate. Trumpalaikis programos srauto praradimas nereiškia, kad klientas pradėjo naujas derybas, o mažos patikros sėkmė neįrodo, kad visa kita toliau veikė.

Pakeiskite komponentą, kurį nurodo įrodymai

Užimtas modulis yra tyrimo vieta, o ne nuosprendis. Jis gali atlikti darbą, kurį sukėlė kitas komponentas arba jūsų sukurta apkrova. Laikykite kartu modulio pavadinimą, įrenginį, tvarkyklės versiją ir stebėtą intervalą, nes būtent šis rinkinys yra tai, dėl ko tiekėjas gali imtis veiksmų.

Vienas pakeitimas viename eksperimente yra vienintelis būdas pasimokyti iš rezultato. Laidinis palyginimas susiaurina apimtį, bet jis tuo pačiu metu keičia radijo kelią ir tvarkyklės aktyvumą, todėl traktuokite jį kaip užuominą, o ne kaip įrodymą.

Pėdsaką traktuokite kaip slaptą. Jame gali būti procesų pavadinimų ir aplinkos detalių, todėl jo vieta yra palaikomame įrašymo kanale, o ne viešame priede. Pasakykite, į kokį stebėjimą pėdsakas turėjo atsakyti.

Susiję straipsniai