Pyetjet mund të përfundojnë në milisekonda dhe gjithsesi të marrin minuta për të arritur në një laptop përmes një VPN. Serveri shkruan rreshta në buferë, lidhja i transporton dhe klienti i konsumon, dhe këto faza mbivendosen në vend që të ecin në sekuencë. Secila prej tyre mund të bëhet kufizimi. Gjeni fazën që vërtet pret përpara se të ndryshoni gjerësinë e brezit ose të aktivizoni kompresimin.

Tri faza, një kronometër

Ndani kohëmatësin në dy numra me kuptim të ndryshëm: momentin kur rreshti i parë është i disponueshëm dhe momentin kur rreshti i fundit është konsumuar. Një rrjetë që vizaton faqen e parë dëshmon vetëm se pyetja ka filluar. Koha e rezultatit të plotë është ajo që përjeton përdoruesi kur eksporton ose lëviz deri në fund.

Regjistroni të dy numrat bashkë me tekstin e pyetjes, parametrat dhe cilësimet e lidhjes. Pa atë kontekst, krahasimi është midis dy punëve të ndryshme, jo midis dy vendndodhjeve.

Lexoni pritjen përpara rrjetit

SQL Server i shkruan rreshtat e rezultatit në buferë daljeje që klienti t'i marrë, dhe një klient që konsumon ngadalë mund ta detyrojë serverin të presë në atë dërgim. Lloji i pritjes është ASYNC_NETWORK_IO, dhe shënimi i Microsoft për zgjidhjen e problemeve rendit rezultatet e mëdha dhe përpunimin në anën e klientit ndër shkaqet. Pritja thotë se rruga e dërgimit është e bllokuar, jo pse.

Një VPN e ngadaltë mund të kontribuojë, por edhe një klient që formaton çdo rresht, shkruan në skedar ose bën pauza midis grupeve. Emri i pritjes është një tregues për matjen tjetër, jo një verdikt për lidhjen.

SELECT wait_type, wait_time_ms
FROM sys.dm_os_wait_stats
WHERE wait_type = 'ASYNC_NETWORK_IO';

Lexoni numëruesin ndërsa ngarkesa e kufizuar po ekzekutohet, jo pas një ore boshe, sepse numëruesit kumulativë përziejnë çdo sesion që nga nisja e instancës. Krahasoni diferencën gjatë ekzekutimit, jo totalin e jetës. Një diferencë në rritje gjatë transferimit e ngushton pyetjen në konsum ose dorëzim.

Vendosni të dy klientët në të njëjtën orë

Ekzekutoni një ngarkesë të kufizuar nga një klient afër bazës së të dhënave dhe nga klienti në distancë. Mbani identike pyetjen, parametrat, madhësinë e rezultatit dhe cilësimet e lidhjes. Përdorni të njëjtën matje në të dyja anët, sepse koha e ekzekutimit të serverit, koha e shfaqjes së rrjetës dhe koha e eksportimit janë tri orë të ndryshme. Krahasimi i një numri nga ana e serverit me një kohëmatës eksportimi nga ana e klientit prodhon një përfundim që nuk mund të testohet.

Kur rruga duket përgjegjëse, kërkoni nga pronari i rrjetit të vëzhgojë humbjet, ritransmetimet dhe aftësinë e arritur për atë rrjedhë specifike ndërsa transferimi po ecën. Një test i përgjithshëm shpejtësie mund të përdorë një rrugë, pikë fundore ose model tjetër paralelizmi. Një kërkesë e vogël e suksesshme thotë pak për një transferim të qëndrueshëm rezultati.

Prisni bajtët përpara se të fajësoni rrugën

Filtrimi, grumbullimi dhe zgjedhja vetëm e kolonave të nevojshme zvogëlojnë volumin e transferimit dhe punën që klienti bën me çdo rresht. Ruani rezultatin e synuar, sepse një raport mund të ketë nevojë për detaje që përmbledhja në ekran nuk i ka.

Për eksportime të përsëritshme, një vendndodhje ekzekutimi e miratuar afër bazës së të dhënave mund të shkruajë një dalje të përcaktuar që më pas dorëzohet një herë. Kjo ndryshon rrjedhën e punës dhe kontrollet e saj të aksesit, dhe nuk është leje për të lënë një dump të pakufizuar në një host të përbashkët.

Kompresimi nuk është rregullimi i parazgjedhur. Mbështetja dhe siguria varen nga protokolli dhe implementimi aktual, dhe një rrjedhë e kompresuar që klienti e dekompreson ngadalë mund ta përkeqësojë përvojën. Matni së pari fazën, më pas zgjidhni një ndryshim të mbështetur për atë fazë.

Artikuj të ngjashëm