- Az adatok terjesztése
- Az elosztott rendszerek jellemzői
- Kompatibilitás
- Hibatűrés
- Közvetlen szoftver és API
- Építészet
- Ügyfél-szerver architektúra
- Peer-to-peer építészet
- Többszintű architektúrák
- Processzorcsoport architektúra
- Az elosztott rendszerek típusai
- Klaszter számítás
- Hálózati számítástechnika
- Felhő alapú számítástechnika
- célok
- Források megosztása
- Absztrakció
- Nyítás
- Átjárhatóság és hordozhatóság
- skálázhatóság
- Alkalmazások
- Erlang virtuális gép
- bittorrent
- Előny
- hátrányok
- Példák elosztott rendszerekre
- StackPath
- Internet
- Irodalom
Az elosztott rendszerek olyan szoftverek, amelyek több számítógép műveleteinek összehangolására szolgálnak. Ez a koordináció az üzenetek cseréjével érhető el, vagyis olyan adatokkal, amelyek információt továbbítanak.
Az elosztott rendszereknek párhuzamos komponensekre, kommunikációs hálózatra és szinkronizációs mechanizmusra van szükségük. Lehetővé teszik az erőforrások megosztását a hálózathoz csatlakoztatott rendszerekkel, ideértve a szoftvert is. Ezért a rendszer olyan hálózaton alapul, amely összeköti a számítógépeket és kezeli az üzenetek továbbítását.

a és b (elosztott rendszerek). b (párhuzamos rendszer). Miym / CC BY-SA (https://creativecommons.org/licenses/by-sa/3.0)
Az elosztott számítástechnika olyan terület, amely az elosztott rendszerek elemzéséért felel. Az elosztott rendszeren futó számítógépes programot elosztott programnak nevezzük.
Olyan körülmények között, ahol több száz vagy több ezer számítógép lehet, ami a nagy internetes cégeknél gyakori arány, nagyon gyakori, hogy vannak alkatrészhibák, legyen az hardver, hálózat, lemezek stb., És a rendszernek kész arra, hogy szembenézzen velük.
Az adatok terjesztése
A terjesztés kulcsfontosságú a nagyon nagy adatkonglomerátumok kezeléséhez. El kell érni a méretezhetőséget, amely lehetővé teszi a stabil teljesítmény fenntartását, amikor az adatkészletek növekednek az új erőforrások hozzáadásával a rendszerhez.
Másrészt a disztribúció számos technikai problémát jelent, amelyek miatt az elosztott számítástechnika és tárolás tervezését és megvalósítását fontos figyelembe venni. Az egyik szempont, amelyet figyelembe kell venni, a lehetséges kudarcok kockázata.
Az elosztott rendszerek jellemzői

a és b (elosztott rendszerek). b (párhuzamos rendszer). Miym / CC BY-SA (https://creativecommons.org/licenses/by-sa/3.0)
Kompatibilitás
Az eszközök különféle operációs rendszerekkel működhetnek. Ez nem akadályozza meg őket abban, hogy mindig ugyanazt a szolgáltatást kínálják a felhasználóknak. Ezért az összes csatlakoztatott eszköz kompatibilis egymással.
Egy másik alapvető kérdés a szoftver tervezése, mivel kompatibilis az összes számítógéppel rendelkező rendszerrel és felhasználóval.
Hibatűrés
Ha egy hálózat létezik sok számítógéppel, ha annak egyik alkotóeleme meghibásodik, akkor a többi továbbra is teljes körűen ellátja funkcióját, elkerülve a hibákat.
Ezért az elosztott rendszerek általában sok bizalmat adnak, amikor velük dolgoznak, mivel nagyon ritka, hogy a rendszer teljesen kudarcot vall, mivel a feladatok nem egyetlen eszközön, hanem különféle számítógépeken találhatók.
Közvetlen szoftver és API
Különböző processzorok használnak disztribúciós köztes szoftvert, elősegítve a különböző erőforrások és képességek megosztását, hogy koherens és integrált hálózatot biztosítsanak a felhasználók számára. Számos szolgáltatást is nyújt az alkalmazásokhoz, például a biztonsághoz és az összeomlás helyreállításához.
Ma többet hallanak az alkalmazásprogramozási felületekről (API-k), amelyek átjáróként szolgálnak az alkalmazások kommunikációjára. Az alkalmazásoknak nem kell semmit tudniuk más alkalmazásokról, kivéve az API-kat.
Építészet
Ügyfél-szerver architektúra
Egy adott kiszolgálónak nevezett számítógép képes bizonyos feladatokat végrehajtani, amelyeket szolgáltatásoknak hívnak. Például a fájlok kiszolgálása a hálózaton keresztül, az egyes parancsok végrehajtásának képessége vagy az adatok nyomtatóra továbbítása. Az ügyfél az a számítógép, amely a szolgáltatásokat igényli.
Az elsősorban az általa nyújtott szolgáltatás miatt ismert számítógépet nyomtatószervernek, fájlkiszolgálónak stb. Lehet hívni.
Peer-to-peer építészet
Feltételezi, hogy minden számítógép hasonló képességekkel rendelkezik, és hogy egyetlen gépet sem szánnak a többi kiszolgálására. Erre példa egy kis irodában lévő mikrotípusú számítógép.
A hálózat lehetővé teszi az emberek számára, hogy hozzáférjenek egymás fájljainak és e-mailek küldéséhez, de egyetlen számítógép sem nyújt külön szolgáltatást.
Többszintű architektúrák
Bizonyos szolgáltatások esetében értelme lehet a hierarchikus kapcsolatnak. Például:
- A kiszolgáló a feladatainak végrehajtásakor kapcsolatba léphet egy másik típusú szerverrel
- Az ügyfél-szerver architektúra kétszintű architektúra.
Processzorcsoport architektúra
Az operációs rendszer automatikusan elindíthatja a készenléti számítógépeken végrehajtott folyamatokat, és akár a nagyobb rendelkezésre álló CPU-ciklusokkal rendelkező rendszerekbe is migrálhat. Más esetekben a felhasználó manuálisan elindíthatja vagy mozgathatja a folyamatokat a rendelkezésre álló rendszereken.
Az elosztott rendszerek típusai
Klaszter számítás
Hasonló számítógépek gyűjteménye, nagy sebességű helyi hálózaton keresztül csatlakoztatva. Gyakran használják párhuzamos programozásra, ahol egyetlen számítási igényes program párhuzamosan fut több számítógépen.
Mindegyik fürt egy számított csomópontból áll, amelyeket egy vagy több, masternek nevezett csomópont figyel és kezel.
Hálózati számítástechnika
Csomópontokból áll, amelyek jelentős különbségeket mutatnak a hardver és a hálózati technológia területén. A jelenlegi tendencia, hogy bizonyos feladatokhoz a csomópontok speciális konfigurációját alkalmazza, nagyobb diverzitást eredményezett, ami a leggyakoribb a hálózati számításban.
Felhő alapú számítástechnika
Ez egy felhő-szolgáltató adatközpontjában elhelyezkedő virtualizált erőforrások halmaza. Az ügyfelek virtualizált infrastruktúrát hozhatnak létre a különféle felhőalapú szolgáltatások előnyeinek kihasználása érdekében.
Úgy tűnik, hogy a felhasználó bérel saját exkluzív számítógépet. Valójában valószínű azonban, hogy megosztja azt más ügyfelekkel. Ugyanez vonatkozik a virtuális tárolásra.
Ezek a virtualizált erőforrások dinamikusan konfigurálhatók, ezáltal lehetővé téve a méretezhetőséget. Ha további számítási erőforrásokra van szükség, a rendszer többet vásárolhat.
célok
Források megosztása
Legyen szó tárolóeszközökről, adatfájlokról, szolgáltatásokról vagy hálózatokról, a gazdaságosság érdekében érdemes megosztani ezeket az erőforrásokat az alkalmazások között.
Sokkal olcsóbb, ha több alkalmazás között megosztott tárolóhely van, mint amennyit külön-külön kell megvásárolni és fenntartani.
Absztrakció
Annak elrejtése, hogy a folyamatok és az erőforrások több számítógépen vannak elosztva, valószínűleg földrajzilag szétszórtan. Vagyis a folyamatokat és az erőforrásokat kivonják a felhasználótól.
Nyítás
Alapvetően azt jelzi, hogy az elosztott rendszer olyan elemekkel épül fel, amelyek könnyen integrálhatók más rendszerekhez. A szabványos szabályok betartása mellett az adott felülettel rendelkező bármely folyamat kommunikálhat ugyanazzal a felülettel rendelkező másik folyamattal.
Átjárhatóság és hordozhatóság
Arra utal, amikor két gyártó két rendszere működhet együtt. A hordozhatóság meghatározza, hogy az A rendszer számára készített alkalmazás milyen mértékben képes módosítani a B rendszert.
skálázhatóság
Erre akkor van szükség, ha növekszik azok a felhasználók, akiknek több erőforrásra van szükségük. Jó példa a Netflix közönség számának növekedése minden péntek este.
Ez azt jelenti, hogy dinamikusan bővítjük az erőforrásokat, például növeljük a hálózati kapacitást azáltal, hogy lehetővé teszik a több videoátvitelt, és csökkentjük azt, miután a fogyasztás normalizálódott.
Alkalmazások
Erlang virtuális gép

A LYME szoftvercsomag Erlang alapú, és alternatívát kínál a LAMP számára. Shmuel Csaba Otto Traian / CC BY-SA (https://creativecommons.org/licenses/by-sa/3.0)
Az Erlang funkcionális nyelv, amelynek nagyszerű szemantikája van az egyidejűség, az eloszlás és a hibatűrés szempontjából. Az Erlang virtuális gép kezeli az Erlang alkalmazás terjesztését.
Ez a modell úgy működik, hogy számos elkülönített folyamattal rendelkezik, amelyek mindegyikének lehetősége van kommunikálni egymással egy beépített üzenetküldő rendszeren keresztül.
Az Erlang virtuális gép kapcsolódhat más virtuális gépekhez, amelyek különböző helyeken vannak. Ez a virtuális gépek raj egyetlen alkalmazást futtat, kezelve az egyik gép hibáit úgy, hogy ütemezte, hogy egy másik csomópontra futjon.
bittorrent

BitTorrent hálózati működés. Mrjavi / CC BY-SA (https://creativecommons.org/licenses/by-sa/4.0)
Ez az egyik legszélesebb körben használt protokoll a nagy fájlok internetes továbbítására. A fő gondolat az, hogy megkönnyítse a fájlok átvitelét a hálózat különböző társai között, anélkül, hogy át kellene menniük a fő szerveren.
A BitTorrent kliens használatával a számítógép letöltéséhez fájlokhoz kapcsolódhat a világ minden tájáról. A koordinátorként működő számítógép segít megmutatni azokat a csomópontokat a hálózaton, amelyekben megtalálják a kívánt fájlt.
A BitTorrent lehetővé teszi a fájlok önkéntes tárolását és feltöltését más felhasználók számára, akik azt akarják. Annyira népszerű, mert ez volt az első a maga nemében ösztönzőket kínált a hálózathoz való hozzájáruláshoz.
Előny
- Több csomópontot könnyen hozzá lehet adni az elosztott rendszerhez, azaz szükség szerint méretezhető.
- Az elosztott rendszer összes csomópontja össze van kötve. Ezért minden csomópont könnyen megoszthatja az adatokat a többi csomóponttal.
- Az erőforrások, például a nyomtatók, megoszthatók több csomóponttal, ahelyett, hogy csak egyre korlátoznák őket.
- Egy csomópont meghibásodása nem vezet a teljes elosztott rendszer meghibásodásához. A többi csomópont továbbra is kommunikálhat egymással.
hátrányok
- Egyes üzenetek és adatok elveszhetnek a hálózaton, ha egyik csomópontról a másikra haladnak.
- Nehéz megfelelő biztonságot nyújtani az elosztott rendszerekben, mivel mind a csomópontokat, mind a kapcsolatokat biztonságban kell tartani.
- A hálózat túlterhelése akkor fordulhat elő, ha az elosztott rendszer összes csomópontja megkísérel egyidejűleg adatokat küldeni.
- Az elosztott rendszerekhez kapcsolódó adatbázis meglehetősen bonyolult és nehezen kezelhető egyetlen felhasználó rendszerhez képest.
Példák elosztott rendszerekre
Az elosztott rendszerek számos esetben alkalmazhatók, például elektronikus banki rendszerekben, tömegesen multiplayer online játékokban és szenzorhálózatokban.
StackPath
Különösen nagy elosztott rendszert használ a tartalomszolgáltatási hálózati szolgáltatás táplálására. Mindegyik jelenléti pontja (PoP) rendelkezik csomópontokkal, amelyek világszerte elosztott rendszert alkotnak.
A StackPath a legutóbb és a leggyakrabban igényelt tartalmat a használt webhelyhez legközelebb eső helyeken tárolja.
A virtuális számítógépek összekapcsolásával a legkorszerűbb számítástechnika sebességének és rugalmasságának kihasználása mellett a rendszer nagyon gyorsan képes kezelni több ezer egyidejű kérést.
Internet
Ez a legnagyobb elosztott rendszer a világon. Bármely felhasználó úgy érzi, mint egy egységes rendszer, annak ellenére, hogy több millió számítógépből áll.
Az absztrakció fogalmával fogalmam sincs, hol tárolják az adatokat, hány szervert vesznek részt, vagy hogy az információk hogyan jutnak el a böngészőbe. A böngésző feloldja az Internet bonyolultságát.
Ez vonatkozik az olyan alkalmazásokra is, mint a Gmail e-mail vagy bármilyen más használható alkalmazás. Minden ember napi szinten kölcsönhatásba lép az elosztott alkalmazásokkal.
Irodalom
- Paul Krzyzanowski (2018). Elosztott rendszerek. Feltöltve: cs.rutgers.edu.
- Catherine Paganini (2019). Alapozó: elosztott rendszerek és felhő alapvető számítástechnika. Az új verem. Forrás: thenewstack.io.
- Valencia Nemzetközi Egyetem (2020). Elosztott rendszerek, jellemzők és osztályozás. Forrás: universidadviu.com.
- David Meador (2018). Elosztott rendszerek. Oktató pontok. Forrás: tutorialspoint.com.
- Robert Gibb (2019). Mi az elosztott rendszer? Feltöltve: blog.stackpath.com.
- Stanislav Kozlovski (2018). Az elosztott rendszerek alapos bemutatása. Ingyenes kódtábor. Feltöltve: freecodecamp.org.
