Sisteme distribuite sunt piese de software care servesc la coordonarea acțiunilor mai multor computere. Această coordonare se realizează prin schimbul de mesaje, adică cu bucăți de date care transmit informații.
Sistemele distribuite necesită componente simultane, o rețea de comunicații și un mecanism de sincronizare. Acestea permit partajarea resurselor, inclusiv a software-ului, de către sistemele conectate la o rețea. Prin urmare, sistemul se bazează pe o rețea care conectează computerele și gestionează direcționarea mesajelor..
Calculul distribuit este o zonă de calcul care este responsabilă pentru analiza sistemelor distribuite. Programul de calculator care rulează pe un sistem distribuit se numește program distribuit.
Într-un context în care pot exista sute sau mii de computere, ceea ce reprezintă o proporție obișnuită în companiile mari de internet, este foarte frecvent să existe defecțiuni ale componentelor, fie că este vorba de hardware, rețea, discuri etc. să le înfrunte în permanență.
Indice articol
Distribuția este esențială pentru a putea gestiona clustere de date foarte mari. Necesar pentru scalabilitate, care este mijlocul de a menține o performanță stabilă atunci când grupurile de date cresc prin adăugarea de resurse noi la sistem.
Pe de altă parte, distribuția prezintă o serie de probleme tehnice care fac ca proiectarea și implementarea computerelor și stocării distribuite să fie luate în considerare. Un punct de luat în considerare este riscul unor posibile defecțiuni.
Dispozitivele pot funcționa cu diferite sisteme de operare. Acest lucru nu îi împiedică să ofere întotdeauna aceleași servicii utilizatorilor. Din acest motiv, toate dispozitivele conectate sunt compatibile între ele..
O altă problemă fundamentală este proiectarea software-ului, deoarece este compatibil și cu toate sistemele și utilizatorii care se află pe fiecare computer..
Fiind o singură rețea cu multe computere, dacă oricare dintre componentele sale eșuează, celelalte își pot continua să își îndeplinească funcția pe deplin, evitând rapid erorile.
Din acest motiv, sistemele distribuite tind să ofere multă încredere atunci când lucrează cu ele, deoarece este destul de rar ca sistemul să nu funcționeze complet, deoarece sarcinile nu se află într-un singur dispozitiv, ci în computere diferite.
Diferite procesoare utilizează middleware de distribuție, ajutând la partajarea diferitelor resurse și capabilități pentru a oferi utilizatorilor o rețea coerentă și integrată. De asemenea, oferă aplicațiilor o serie de servicii, cum ar fi securitatea și recuperarea de blocare.
Astăzi, auziți mai multe despre interfețele de programare a aplicațiilor (API), care funcționează ca o poartă de acces prin care aplicațiile pot comunica. Aplicațiile nu trebuie să știe nimic despre alte aplicații, cu excepția API-ului lor.
Un anumit computer numit server poate îndeplini anumite sarcini, numite servicii. De exemplu, servirea fișierelor prin rețea, posibilitatea de a executa anumite comenzi sau de a direcționa datele către o imprimantă. Clientul este computerul care solicită serviciile.
Computerul cunoscut în primul rând pentru serviciul pe care îl oferă poate fi numit server de imprimare, server de fișiere etc..
Presupune că fiecare computer are capacități similare și că nicio mașină nu este dedicată serviciului celorlalți. Un exemplu în acest sens este un set de microcomputere dintr-un mic birou.
Rețeaua permite oamenilor să acceseze fișierele reciproce și să trimită e-mailuri, dar niciun computer nu oferă un set specific de servicii.
Pentru anumite servicii poate avea sens să existe conectivitate ierarhică. De exemplu:
Un sistem de operare ar putea porni automat procese pe computerele inactiv și chiar migra procesele către sisteme cu un număr mai mare de cicluri CPU disponibile. În alte cazuri, un utilizator poate porni sau muta manual procese pe sistemele disponibile.
Este un set de computere similare conectate printr-o rețea locală de mare viteză. Este frecvent utilizat pentru programarea paralelă, unde un singur program intensiv în calcul rulează în paralel pe mai multe computere.
Fiecare cluster constă dintr-un set de noduri de calcul care sunt monitorizate și gestionate de unul sau mai multe noduri numite master..
Este alcătuit din noduri cu diferențe marcate în hardware și tehnologie de rețea. Tendința actuală de a avea o configurație specifică a nodurilor pentru anumite sarcini a dus la o mai mare diversitate, care este cea mai comună în calculul de rețea.
Este un set de resurse virtualizate găzduite în centrul de date al unui furnizor de cloud. Clienții pot stabili o infrastructură virtualizată pentru a profita de o varietate de servicii cloud.
Pentru utilizator, se pare că își închiriază propriul computer exclusiv. Cu toate acestea, este foarte probabil să îl distribuiți altor clienți. Același lucru se aplică stocării virtuale.
Aceste resurse virtualizate pot fi configurate dinamic, permițând astfel scalabilitatea. Dacă sunt necesare mai multe resurse de calcul, sistemul poate dobândi mai multe.
Fie că sunt facilități de stocare, fișiere de date, servicii sau rețele, poate doriți să partajați aceste resurse între aplicații, pentru o economie simplă.
Este mult mai ieftin să aveți o facilitate de stocare partajată între mai multe aplicații decât să cumpărați și să întrețineți spațiu de stocare pentru fiecare separat..
Pentru a ascunde că procesele și resursele sunt distribuite pe mai multe computere, posibil dispersate geografic. Adică procesele și resursele sunt extrase de la utilizator.
Practic indică faptul că un sistem distribuit este construit cu elemente care pot fi ușor integrate cu alte sisteme. Respectând regulile standardizate, orice proces cu acea interfață poate comunica cu un alt proces cu aceeași interfață.
Se referă la momentul în care două sisteme de la producători diferiți pot lucra împreună. Portabilitatea determină măsura în care o aplicație realizată pentru sistemul A poate funcționa pe sistemul B fără modificări..
Este necesar atunci când există o creștere a utilizatorilor care au nevoie de mai multe resurse. Un bun exemplu este creșterea audienței Netflix în fiecare vineri seară.
Înseamnă adăugarea dinamică a mai multor resurse, cum ar fi creșterea capacității rețelei, permițând mai multe transmisii video și reducerea acesteia odată ce consumul sa normalizat.
Erlang este un limbaj funcțional care are o semantică excelentă pentru concurență, distribuție și toleranță la erori. O mașină virtuală Erlang gestionează distribuția unei aplicații Erlang.
Acest model funcționează având multe procese izolate, toate având capacitatea de a comunica între ele printr-un sistem de transmisie a mesajelor încorporat..
Mașina virtuală Erlang se poate conecta la alte mașini virtuale care se află în locuri diferite. Acest roi de mașini virtuale rulează o singură aplicație, gestionând eșecurile unei mașini programând-o să ruleze pe un alt nod..
Este unul dintre cele mai utilizate protocoale pentru transferul de fișiere mari pe web. Ideea principală este de a facilita transferul de fișiere între diferiți colegi din rețea fără a fi nevoie să treceți printr-un server principal.
Utilizând un client BitTorrent, vă puteți conecta la mai multe computere din întreaga lume pentru a descărca un fișier. Un computer care acționează ca coordonator ajută la afișarea nodurilor din rețea care au fișierul dorit.
BitTorrent vă permite să găzduiți în mod voluntar fișiere și să le încărcați pentru alți utilizatori care le doresc. Este atât de popular, deoarece a fost primul de acest gen care a oferit stimulente pentru contribuția la rețea..
- Mai multe noduri pot fi adăugate cu ușurință la sistemul distribuit, adică pot fi scalate după cum este necesar.
- Toate nodurile din sistemul distribuit sunt conectate între ele. Prin urmare, fiecare dintre noduri poate partaja cu ușurință date cu celelalte noduri..
- Resursele, cum ar fi imprimantele, pot fi partajate cu mai multe noduri în loc să fie limitate la un singur.
- Eșecul unui nod nu duce la eșecul întregului sistem distribuit. Celelalte noduri pot comunica încă între ele.
- Unele mesaje și date se pot pierde în rețea atunci când se trece de la un nod la altul.
- Este dificil să oferiți o securitate adecvată în sistemele distribuite, deoarece trebuie să fie securizate atât nodurile, cât și conexiunile.
- Suprasolicitarea rețelei poate apărea dacă toate nodurile din sistemul distribuit încearcă să trimită date în același timp.
- Baza de date conectată la sistemele distribuite este destul de complicată și dificilă în comparație cu sistemul cu un singur utilizator.
Sistemele distribuite pot fi utilizate într-un număr mare de cazuri, cum ar fi sistemele bancare electronice, jocurile online multiplayer masive și rețelele de senzori..
Folosește un sistem distribuit deosebit de mare pentru a alimenta serviciul său de rețea de livrare a conținutului. Fiecare dintre punctele sale de prezență (PoP) are noduri, formând un sistem distribuit la nivel mondial.
StackPath stochează conținutul cel mai recent și cel mai frecvent solicitat în locațiile cele mai apropiate de site-ul utilizat.
Prin interconectarea calculatoarelor virtuale, pe lângă faptul că profită de viteza și agilitatea computerelor de ultimă generație, sistemul poate gestiona foarte repede mii de cereri simultane.
Este cel mai mare sistem distribuit din lume. Orice utilizator se simte ca un singur sistem, chiar dacă este format din milioane de computere.
Prin conceptul de abstractizare, nu aveți idee unde sunt stocate datele, câte servere sunt implicate sau cum ajung informațiile în browser. Browserul dizolvă complexitatea internetului.
Acest lucru se aplică și aplicațiilor precum e-mailul Gmail sau orice altă aplicație care poate fi utilizată. Fiecare persoană interacționează zilnic cu aplicațiile distribuite.
Nimeni nu a comentat acest articol încă.