Cinci modalități de a accelera aplicațiile virtuale

Autor: Laura McKinney
Data Creației: 2 Aprilie 2021
Data Actualizării: 1 Iulie 2024
Anonim
Ochelari de realitate virtuală Shinecon SC-G06E cu căști
Video: Ochelari de realitate virtuală Shinecon SC-G06E cu căști

Conţinut


Sursa: Viktorus / Dreamstime.com

La pachet:

Aflați cinci tehnici pentru a accelera aplicațiile virtuale fără a rupe banca.

Una dintre frustrările de a merge virtual pentru aplicații și desktop-uri este performanța. Nimeni nu vrea să aștepte mai mult de o secundă sau două pentru ca o aplicație să apară după lansare. În calitate de utilizatori, ne așteptăm ca aplicațiile noastre să apară imediat după dublu clic pe pictogramă. Nu ne dăm seama ce se întâmplă în fundal pentru a livra acele aplicații între server, prin firewall-uri, prin echilibrele de încărcare, prin aer sau prin firele de pe desktop-uri și pe dispozitivele noastre mobile și nici nu ne pasă. Răbdarea noastră colectivă s-a purtat subțire cu promisiuni de o tehnologie mai bună, mai rapidă și mai sigură și este timpul pentru un moment „pus la punct sau închis” de la furnizori și de la personalul de asistență. La rândul lor, vânzătorii și personalul de asistență ne împărtășesc durerea și au răspuns cu unele tehnologii de accelerație care oferă performanță la sau aproape de nivelurile instalate local.


Pentru utilizatori, este vorba despre viteză, dar spre deosebire de utilizatori, arhitecții, administratorii de sistem și CIO-urile nu caută un răspuns mai rapid la dublu clic pe utilizatori; caută, de asemenea, scalabilitate, securitate îmbunătățită și speranțe de viață mai lungi în tehnologie decât până acum. În cele din urmă, utilizatorii sunt cei mai critici furnizori și asistență, iar din acest motiv, explorarea tehnicilor și tehnologiilor de aplicație virtuală sunt la îndemână. Acest articol examinează cinci moduri de a accelera aplicațiile virtuale. Cele cinci soluții nu sunt într-o ordine particulară, dar toate se concentrează într-una din cele trei domenii cheie pentru optimizare și accelerare: infrastructura, codul aplicației și lățimea de bandă.

Optimizare WAN și LAN

Vă puteți referi la optimizarea WAN și LAN ca soluție de lățime de bandă, unde obiectivul final este să pună mai multe informații și mai multe date pe o conductă de rețea într-o manieră mai eficientă. Deoarece performanța aplicației este atât de critică pentru utilizatorii finali, există unele metode ingenioase de a furniza mai mult conținut în timp mai scurt, cum ar fi crearea unei rețele de livrare de conținut (CDN) care, în esență, apropie datele mai mult de consumator sau de utilizatorul final. Mutarea datelor mai aproape de utilizator scade latența, deoarece datele trebuie să parcurgă mai puține „hamei” sau rețele pentru a ajunge la destinație. Cei mai mulți furnizori de servicii cloud au deja CDN-uri pentru a ajuta proprietarii de aplicații să furnizeze conținut distribuit aproape de consumatorii săi.


Bilanțarea sarcinii optimizează lățimea de bandă prin răspândirea cererilor clientului pe mai multe servere sau în mai multe locații, pentru a partaja mai bine sarcina livrării de aplicații. Echilibratoarele de încărcare îmbunătățesc viteza de livrare a aplicației prin eliminarea blocajelor de trafic care apar la solicitările utilizatorului pentru o singură aplicație. Dar, de asemenea, cresc fiabilitatea prin a putea livra aplicația eficient pe un server care nu este supraîncărcat cu alte solicitări.

Creșterea lățimii brute de bandă între aplicații și clienți pare o îmbunătățire evidentă pentru a facilita livrarea aplicațiilor. Cine poate susține că o conexiune de rețea gigabit între infrastructura aplicației și computerul client este un lucru rău? Chiar și o aplicație slab proiectată și concepută va primi un impuls semnificativ al performanței prin creșterea lățimii de bandă între sursă și țintă.

Compresia datelor și utilizarea tipurilor de suport comprimat precum JPEG, MPEG-4 și MP3 pot avea un impact semnificativ asupra livrării aplicațiilor. Compresia datelor de conținut bazat pe, care înseamnă HTML, CSS și JavaScript, poate duce la o reducere de 30% sau mai mult a timpului de încărcare.

SSD-uri și Array-uri Flash

SSD-urile și tablourile flash par a fi noua tehnologie „merge la” pentru orice fel de îmbunătățire a performanței aplicației. Este adevărat că stocarea în stare solidă este mult mai rapidă decât discurile învârtite, dar este și mult mai scumpă. Soluția ar putea fi bine să privim folosirea SSD-urilor diferit - ca memorie cache pentru date „la cald” în loc de date în repaus. SSD-urile pot furniza date mult mai rapid decât discurile învârtite pot, dar o parte din această eficiență se pierde în traducerea prin rețea și prin diferite componente de rețea. Cu toate acestea, dacă se folosește așa-numita „flash cache” pentru a folosi viteza SSD pe care să stocheze informațiile din cache, rezultatele sunt impresionante. Intel raportează până la „de 12 ori mai multe performanțe la procesarea bazelor de date tranzacționale și până la procesarea de până la 36 de ori mai rapidă a sarcinilor de lucru intensiv I / O virtualizate”.

SSD-urile pentru caching-ul de date are sens datorită vitezei cu care datele pot fi preluate și introduse în memorie. Și dacă SSD-urile sunt utilizate doar în scopuri de cache, atunci vor trebui achiziționate în mod semnificativ mai puține pentru a satisface impulsurile de performanță rezultate. (Pentru mai multe despre stocare, consultați Cum să optimizați soluția de stocare a întreprinderii.)

Fără bug-uri, fără stres - Ghidul dvs. pas cu pas pentru crearea de programe care schimbă viața fără a vă distruge viața

Nu îți poți îmbunătăți abilitățile de programare atunci când nimeni nu îi pasă de calitatea software-ului.

GPU-uri virtuale

Întrebați pe oricine folosește un program CAD, un software de editare video sau chiar o aplicație de management de proiect unde dorește încărcarea aplicațiilor respective și veți auzi un cor de „local”. Transformarea acestor aplicații cu grafică largă într-un mediu virtual dezastrat. până la lansarea tehnologiei unității de procesare grafică virtuală (GPU).

GPU-urile virtuale permit în cele din urmă orice volum de muncă să fie plasat într-o mașină virtuală. S-au asimilat acum deținerile CAD ale școlii vechi, la fel ca și editorii video și graficienii. Chiar și cei care lucrează în trei dimensiuni au acum o prezență virtuală datorită GPU-urilor virtuale.

Ceea ce a făcut posibilă această tehnologie este faptul că plăcile GPU speciale, compatibile cu sistemele de gazdă a mașinilor virtuale, sunt instalate în acele sisteme gazdă și apoi atributele hardware ale acestora sunt abstractizate sau virtualizate, astfel încât să poată fi utilizate de mașinile virtuale.

Software optimizat de performanță

Administratorii de sistem furioși și frustrați vă vor spune adesea că remedierea codului nu este treaba lor. Problema omniprezentă este totuși că dezvoltatorii ar putea fi de prim rang la programarea unei aplicații, dar nu pot avea absolut niciun indiciu sau dorința de a obține un indiciu despre optimizarea codului pentru performanță.Adesea, atitudinea este că mai multă RAM, discuri mai rapide sau CPU mai puternice vor rezolva problemele legate de performanță care ar putea exista în cod și este adevărat într-o anumită măsură. În mod alternativ, remedierea codului este mult mai puțin costisitoare și mult mai ușor de rezolvat decât reconstruirea unei infrastructuri pur și simplu pentru a accelera aplicațiile slab scrise.

Există, cum ar fi pionierul computerului Donald Knuth, care a spus despre optimizarea codului computerului, „Dacă optimizați totul, veți fi întotdeauna nemulțumit.” Opiniile domnului Knuth, în ciuda faptului, codul de optimizare pentru o îmbunătățire echilibrată ar trebui să fie efectuat și tolerat . Dar ce zici de programele comerciale pe care le cumpărați și le implementați utilizatorilor dvs.? De exemplu, suita permanentă Microsoft Office este o suită standard de aplicații pe care administratorii de sistem trebuie să le pună la dispoziție atât pentru utilizatorii locali, cât și pentru utilizatorii de la distanță.

În cazul programelor comerciale pe care administratorii nu au niciun efect, acestea trebuie să aplice o strategie de îmbunătățire a performanței pe mai multe straturi. Cache-ul de biți de aplicație comun va fi cea mai mare tehnologie a administratorului în accelerarea livrării de aplicații mari către utilizatori.

Caching

De fiecare dată când citiți sau auziți termenii de preîncărcare, preprocesare sau precompilare, scriitorul sau vorbitorul se referă cel mai probabil la un fel de memorie în cache. Memoria în cache a aplicațiilor se referă de obicei la încărcarea anumitor bucăți de conținut static și dinamice într-un tampon de memorie, astfel încât să poată fi ușor recuperat la cerere. Singurele biți livrate pe tot parcursul conductei sunt cele care au legătură specifică cu utilizatorul sau cu alte date dependente de timp sau de sesiune. Toate celelalte sunt puse în memorie.

Caching-ul pune mai puțin stres pe stocare, pe lățimea de bandă a rețelei și pe procesoare. Datele așteaptă în memorie până la apel și apoi continuă călătoria mult mai scurtă către utilizatorul final. Majoritatea tehnologiilor combină memoria cache cu locația pentru a oferi conținut mai rapid. Cu alte cuvinte, datele obișnuite - care sunt date comune tuturor utilizatorilor - sunt introduse în CDN-urile menționate anterior și apoi sunt livrate utilizatorilor apropiați de datele solicitate. Unele soluții ajung până la a memora în cache datele locale pe site-uri la distanță sau prin satelit, astfel încât acei biți comuni rezidă acolo unde sunt consumați și nu trebuie să fie atrași în noul WAN sau pe o legătură de internet.

Cache-ul este adesea o metodă preferată de accelerare a aplicației, deoarece este mult mai puțin costisitor decât soluțiile performante care se bazează în mod comparabil pe baza îmbunătățirilor infrastructurii. (Pentru a afla mai multe despre introducerea în cache, consultați Scrierea corectă? O privire la metodele de memorie în cache I / O.)

rezumat

Poate că regula generală de bază atunci când încercați să optimizați sau să accelerați aplicațiile virtuale în orice mediu este să încercați mai întâi cachingul și apoi să completați acea strategie cu alte tehnologii. Cache-ul este soluția cea mai puțin costisitoare și este și cea mai puțin invazivă. Cel mai bun sfat este să achiziționați o mulțime de memorii RAM pentru memorie în memorie cache și SSD-uri pentru memorie în cache. Încercați să mențineți costurile gestionabile, dar amintiți-vă că atunci când cheltuiți bani pe infrastructură și pe software, îl puteți amortiza pe toată durata de viață a tehnologiei și o puteți răspândi pe utilizatori pentru a facilita digestia. Până la urmă, mențineți-vă utilizatorii productivi și fericiți și vă vor ține cu angajare.