indiferent dacă rulați un server pentru o aplicație sau doar mașina dvs. locală, doriți ca computerul să funcționeze cât mai bine. De aceea, ar trebui să vă asigurați că monitorizați utilizarea procesorului, a discului și a memoriei computerului. Monitorizarea lucruri cum ar fi utilizarea memoriei și utilizarea discului sunt de fapt destul de ușor. Cât spațiu pe disc ți-a mai rămas? Discul dvs. este fragmentat? Aveți suficientă memorie RAM pentru aplicațiile pe care le utilizați? Schimbați în mod regulat memoria?
acestea sunt întrebări ușor de răspuns și sunt întrebări pe care ar trebui să le puneți., Dar unele întrebări sunt mai complicate, mai ales când vine vorba de valorile procesorului. Sigur, există valori simple, cum ar fi utilizarea generală a procesorului. Dar dacă utilizați Linux, aveți mai multe valori ezoterice (și uneori mai utile), cum ar fi încărcarea procesorului. În această postare, vom vorbi despre ce înseamnă de fapt metrica de încărcare a procesorului și cum o puteți utiliza pentru a vă optimiza serverele.
Încărcare CPU vs CPU Utilizare
primul lucru este să se înțeleagă că încărcarea PROCESORULUI nu este același lucru ca și utilizarea PROCESORULUI., Chiar dacă ar putea suna similar, sunt destul de diferite. Utilizarea procesorului este o măsurare, într-un procent, a timpului pe care CPU-ul îl petrece activ calculând ceva. De exemplu, dacă aveți un program care necesită o putere de procesare neîntreruptă pentru 54 din ultimele 60 de secunde, utilizarea Procesorului pe un singur nucleu ar fi de 90%. În schimb, dacă programul necesită doar șase secunde timp de procesare pe un singur nucleu, utilizarea ar fi de 10%.majoritatea companiilor încearcă să mențină utilizarea procesorului serverelor lor cât mai aproape de 100%., Majoritatea serverelor sunt vândute în funcție de puterea totală de calcul, iar dacă serverul dvs. se află doar la 30% din utilizarea procesorului, plătiți pentru prea multă putere a procesorului. Ai putea downgrade procesorul la un nivel inferior, economisi bani, și a vedea nici o reducere a calității performanței serverului.
încărcarea procesorului
încărcarea procesorului este diferită. În loc să măsoare procentul de timp în care CPU funcționează, încărcarea procesorului măsoară câte programe utilizează sau așteaptă un nucleu de procesor la un moment dat. Un procesor complet inactiv ar avea o valoare de încărcare de 0., În exemplul nostru anterior, am avea timpi de încărcare de un minut .9 și .1, respectiv. E destul de intuitiv. Cu toate acestea, ceea ce este neintuitiv în ceea ce privește încărcarea procesorului este că o valoare de 1 nu este neapărat o măsurare complet încărcată.
În schimb, ceea ce constituie o încărcare „completă” a procesorului depinde de câte fire de sistem de operare se mândrește CPU-ul dvs. Majoritatea procesoarelor în aceste zile constituie mai mult decât un singur nucleu CPU, rulând mai mult decât un singur fir CPU. Dacă procesorul dvs. are patru nuclee, atunci o încărcare a procesorului de 1 nu este un procesor complet încărcat. În schimb, ar fi încărcat doar un sfert., În schimb, încărcarea procesorului dvs. ar fi considerată completă pentru CPU dacă valoarea de încărcare a fost 4, nu 1.
descifrarea încărcărilor procesorului Linux
rularea unui program care afișează totalurile de încărcare a procesorului Linux poate fi puțin confuză la început. Dacă executați o comandă precum uptime sau top, este posibil să vedeți o valoare de încărcare a procesorului care arată ca 1.68 0.55 5.91. Dacă nu știi ce cauți, asta pare a fi zgomot. Din fericire, acest lucru este de fapt destul de ușor de descifrat. Există trei valori aici și le vom privi în ordine.
prima valoare este 1.68. Aceasta este valoarea încărcării procesorului în ultimul minut., Așa cum am menționat anterior, aceasta este o măsură a numărului de programe care foloseau timpul procesorului în ultimul minut. Deci, în ultimul minut pe această mașină, au existat o medie de 1, 68 programe fie folosind timpul de procesare a procesorului, fie așteptând timpul de procesare a procesorului. Dacă acesta este un procesor cu un singur filet, înseamnă că computerul este supraîncărcat. Utilizatorii așteaptă ca programele lor să ruleze pe CPU și să se confrunte cu performanțe degradate. Dacă, în schimb, acesta este un computer dual-core sau un quad-core, utilizatorii pot obține timpul procesorului la fel de repede cum au avut nevoie, în ultimul minut.,
a doua valoare este 0,55. Aceasta este măsurarea în ultimele 5 minute. După cum am discutat anterior, o măsurare sub 1 înseamnă că CPU-ul a petrecut o parte din timp în acea fereastră complet inactiv. În acest caz, CPU-ul a fost inactiv aproape jumătate din timp. Dacă ne optimizăm CPU-ul pentru a face în mod constant ceva, acesta nu este un semn bun.
numărul final, 5.91, este o măsurare a ultimelor 15 minute. Dacă utilizați un procesor cu opt nuclee, atunci acest număr nu este deosebit de șocant. Dacă utilizați un procesor dual-core, atunci un număr precum 5.91 înseamnă că procesorul dvs. este foarte supraîncărcat., Utilizatorii așteaptă în mod regulat timpul procesorului și probabil se confruntă cu performanțe semnificativ degradate.
încărcări CPU Unix vs. Linux
Dacă sunteți obișnuiți să utilizați măsurarea încărcării procesorului în UNIX, unele dintre aceste numere ar putea părea cam mari pentru dvs. Asta pentru că Unix și Linux măsoară încărcarea procesorului diferit. Unix măsoară încărcarea procesorului în mod expres ca măsură a programelor care utilizează sau așteaptă în mod activ procesarea procesorului. Linux măsoară lucrurile puțin diferit și înțelege cum este cheia unei bune administrări a sistemului.,
Linux măsuri de încărcare a PROCESORULUI uitandu-se atât la programe care sunt în prezent, folosind sau de așteptare pentru timp de PROCESOR în plus față de programele care sunt în așteptare membre. De exemplu, un program care așteaptă o solicitare de rețea sau pentru a încărca ceva de pe un disc, nu ar conta pentru încărcarea procesorului pe UNIX. Pe Linux, o face. Dacă aceasta este o abordare mai bună sau mai rea depinde de cazul dvs. de utilizare. Dacă doriți să nu măsurați decât utilizarea generală a procesorului, Unix oferă o interfață mai bună., Dar dacă aveți un program care este blocat timp de 30 de secunde așteptând o solicitare de rețea, Linux vă va spune asta. Unix nu ar ieși niciodată la suprafață aceste date.
optimizarea încărcărilor procesorului
nu există niciun glonț de argint pentru optimizarea încărcărilor procesorului. Este un proces pe care trebuie să-l abordați holistic. La fel ca utilizarea procesorului, atunci când sunteți pe un server pe care doriți să fie aproape de 100%, dar nu peste. Uneori, procesul de optimizare a încărcărilor procesorului este destul de ușor. Poate că serverul dvs. va utiliza doar două fire în același timp., În acest caz, optimizarea încărcărilor serverului nu este mai complicată decât a avea un procesor dual-core. Este posibil să aveți nevoie de un procesor mai rapid pentru a vă asigura că aceste programe sunt finalizate la timp, dar nu veți avea nevoie niciodată de mai mult de două nuclee.
majoritatea sistemelor nu se limitează de fapt la exact două fire active. Majoritatea serverelor sunt mult mai complicate. Și una dintre provocările reale este menținerea numărului de nuclee cât mai scăzut posibil, deoarece acest lucru vă economisește bani, fără a merge prea jos și degradant experiențe ale utilizatorilor. S-ar putea să aveți nevoie să optimizați codul pe care îl rulează serverul., Uneori, va trebui să determinați cât timp este consumat programul așteptând lucruri precum interogările bazei de date. S-ar putea ca într-adevăr să aveți nevoie să numărați nucleul pe procesor. Serverele blocate pot avea o serie de cauze și pot fi remediate în mai multe moduri.
cum este încărcarea procesorului?
monitorizarea și optimizarea încărcării procesorului este o parte importantă a obținerii la maximum a memoriei serverului. Din păcate, este, de asemenea, un proces manual consumator de timp. După cum sa menționat, majoritatea comenzilor Linux oferă doar încărcare CPU pentru windows de 15 minute., Acesta este un lucru bun; nu ați dori ferestre mult mai largi decât atât. Ți-ar fi greu să obții informații utile de la ei. Cu toate acestea, a ține cont de încărcarea procesorului pe perioade de rulare de 15 minute este un fel de durere de cap.
din Fericire, există instrumente pentru a monitoriza aceste tipuri de lucruri pentru tine. De exemplu, Scalyr poate monitoriza încărcarea procesorului doar prin ingerarea unor jurnale. Nu veți obține doar o simplă imprimare numerică., În schimb, veți obține un vizual frumos care arată încărcarea generală a procesorului în timp. Acest lucru poate fi util în special, deoarece vă ajută să identificați anumite ferestre care sunt cele mai exigente pe CPU. Optimizarea performanței serverului dvs. înseamnă înțelegerea în detaliu și nu doar la un nivel înalt.
o parte din a fi un bun administrator de sisteme înseamnă înțelegerea serverului dvs. din toate direcțiile. Știind cum să interpretezi încărcarea procesorului și cum să o optimizezi este o parte esențială a maximizării investiției în serverul companiei tale., Înainte de a putea face acest lucru, trebuie să înțelegeți care este de fapt încărcarea procesorului serverului dvs. Nu există o zi mai bună decât astăzi pentru a începe monitorizarea încărcării procesorului serverului. Puteți începe să formulați un plan de optimizare astăzi.acest post a fost scris de Eric Boersma. Eric este un dezvoltator de software și manager de dezvoltare care a făcut totul, de la securitatea IT în domeniul farmaceutic până la scrierea de software de informații pentru Guvernul SUA până la construirea de echipe internaționale de dezvoltare pentru non-profit., Îi place să vorbească despre lucrurile pe care le-a învățat pe parcurs și îi place să asculte și să învețe de la alții.