A téralapú architektúra (SBA – Space-Based Architecture) egy szoftverarchitektúra-minta lineárisan jól skálázható rendszerek megalkotásához. Nagy teljesítményű alkalmazások alkalmazzák ezt a fajta téralapú paradigmát. Több elven, például a REST (Representation State Transfer), szolgáltatásorientált architektúra (SOA), és az eseményvezérelt architektúra, valamint a rácsszámítás egyes elemein alapul. A téralapú architektúrával, az alkalmazások önellátó egységek halmazára épülnek fel, amelyeket úgy hívnak, hogy Feldolgozó egység (PU – Processing Unit). Ezek az egységek függetlenek egymástól, így az alkalmazás könnyen skálázható több egység hozzáadásával.
Az SBA-modell szorosan kapcsolódik más architektúra mintákhoz, amelyekről sikeresen bebizonyosodott a skálázhatósági képessége, mint például Shared-Nothing Architecture, amit a Google, az Amazon.com és egyéb neves vállalatok használnak. A modellt számos más cég is alkalmazza például az értékpapír iparban, skálázható, elektronikus értékpapír-kereskedelmi alkalmazások fejlesztésében.
Komponensei
Egy téralapú architektúrára épülő alkalmazás alapelvei tipikusan a következőek:
Feldolgozó egység – A skálázhatóság egysége, amelyet tetszőleges számban lehet hozzáadni a rendszerhez. Normális esetben, egy feldolgozó egység, egy POJO (Plain Old Java Object, „Jó öreg Java objektum”) konténerre épülnek, olyanokra amelyeket a Spring keretrendszer biztosít.
Virtuális középréteg – Közös futásidejű és klaszterező modellt használ az egész középréteg.
A középréteg komponenseinek magjai tipikusan SBA-architektúra amelyek a következők:
Komponens Leírás Üzenetkezelő rács Kezeli a bejövő tranzakciókat, valamint a kommunikációt a szolgáltatások között Adat rács Kezeli az adatokat az elosztott memóriában. Opciókkal rendelkezik, amelyek szinkronizálják az adatokat az alacsonyabb szinten lévő adatbázis számára Folyamatkezelő rács Párhuzamos feldolgozó komponens, master/worker elv alapján, amely lehetővé teszi az események párhuzamos feldolgozását különböző szolgáltatók között
POJO – vezérelt szolgáltatás modell – Egyszerű szolgáltatás modell, amely magában foglalja a Java standardnak megfelelő implementációkat, ezek egy lazán kapcsolt elérhetőségét/szolgáltatását biztosítva. A modell ideális szolgáltatások interakcióira amelyek ugyanazon a feldolgozóegységen futnak.
SLA-vezérelt konténer – Az SLA tároló lehetővé teszi az alkalmazás telepítését a (gépek egy dinamikus halmazán), amely a Szolgáltatási Megállapodáson alapszik (SLA). SLA meghatározások számos példányt tartalmaznak, amelyeknek futniuk kell azért, hogy megfeleljenek az alkalmazás skálázás irányvonalnak, csakúgy mint más irányvonalaknak.
Irodalomjegyzék
Cikkek/újságok:
Források
Bernhard Angerer, Space-Based Programming Joseph Ottinger, Space-Based Architecture Julian Browne, Space-Based Architecture Illustration Julian Browne, Space-Based Agility Julian Browne, Space-Based Archetypes Owen Taylor, Space-based Architecture — an implementation of TPC Udi Dahan, The Software Simplist, Space-Based Architectural Thinking Mike Herrick, SBA & EDA Lessons Learned Tobin Harris, Space-Based Architecture — One to Watch Udi Dahan, The Software Simplist, Space-Based Architecture Guy Nirpaz (webcast), Space-Based Architecture — Scalable SOA
Kategória:Szoftverfejlesztés