Monoliitsüsteemid

Monoliitsüsteem on kontekstuaalne mõiste, mida kasutatakse IT süsteemides nii riist- kui ka tarkvara arhitektuuri kontekstis.
Monoliitarhitektuuris täidab monoliitsüsteem kõiki ülesandeid ehk see on vaadeldav ühtse tervikuna.
Näiteks tarkvararakendus, mis koosneb kolmest põhikomponendist: kasutajaliidesest (UI), andmebaasist ja serveri rollist mis töötleb infot. Seega, kuna kõik komponendid on paigutatud kokku ühtseks süsteemiks ning on mõeldud täidetava ülesande täitmiseks, peavad kõik komponendid töötama tervikuna ning kogu süsteemi arhitektuur on vaja mõelda välja otsast lõpuni. Sellest tulenevalt on mõningateks tunnusteks näiteks isoleeritus, algse arenduse lihtsus, kuid hilisem paindumatus, keerukus edasiarendustel ja probleemid süsteemi skaleeritavuses.
Näiteks riistvara korral on monoliitsüsteemis erinevad komponendid integreeritud ühtsesse integraalskeemi.
Sissejuhatus.
Sõna "monoliit" on tulnud vanakreeka keelest, kus sõna "monos" tähendas üksikut ja "lithos" kivi. Seega sõna "monolithos" all mõeldi ühe suurt kiviplokki mis etendas tavaliselt kas sammast või monumenti. 
Peatselt võtsid prantslased kasutusele muganduse "monolithe" ning inglise keeles hakati kasutama 19. sajandil sõna "monolith". Eestis leidis sõna "monoliit]]" suuremat kasutamist geoloogide seas 1980. aasta lõpus, samuti on mõiste [[monoliit (arheoloogia)|monoliit] tarvitusel [[arheoloogia]]s.
Tänaseks kasutatakse ka eelpool kirjeldatud sõna laialdaselt mitmete IT süsteemide kirjeldamisel. Siiski on IT valdkonnas väikene varieeruv käsitletavas kontekstis ning üldisema tähenduse saamiseks, tuleks monoliitsüsteemide kirjeldamisel läheneda arhitektuurilisest lähenemisest.
Monoliitne tarkvaraarhitektuur.
Monoliitses IT arhitektuuris on elemendid omavahel tihedalt seotud, mis tähendab, et tegemist on bimodulaarsete süsteemide ([[Agiilsed metoodikad|agiilsete süsteemide]]) lähenemisviisi vastandiga. Sellest tulenevalt võiks lihtsustatult öelda, et monoliitnesüsteem koosneb ühest tervikust, mis sisaldab kõiki tööks vajalikke koostisosi. Näiteks monoliitnerakenduse korral on programmide komponendid üksteisega tihedalt sidestatud ja üksteisest sõltuvad ega kasutata lõdvalt sidustatud lähenemist, nii nagu seda tehakse modulaarsete rakenduste korral.
Valesti mõistmine.
Võidakse arvata, et monoliitarhitektuur võib sõltuda ühest suurest süsteemist või ühest suurest arendusest ja ühest suurest andmebaasist, kuhu ühendatakse klientseadmeid. Tegelikult monoliitsüsteem ei tähenda seda. Monoliitsüsteemides võib olla kasutusel mitu serverit ja ka mitu andmebaasi, kuid nad on kõik ühtse tervikusüsteemi osad.
Monoliitse tarkvarasüsteemi plussid ja miinused.
Plussid:
Miinused:
Monoliitse tarkvarasüsteemi tänapäev ja tulevik.
Tänaseks on tugev trend mikroteenuste baasil põhinevate arhitektuuride evitamisel ning tihti võrreldakse neid monoliitsüsteemidega. Samuti on väga tugev trend ka monoliitsüsteemide "lahtilammutamisel" mikroteenusteks ning vastandlike seisukohtade võtmisel nende kahe täiesti erineva paradigma vahel. Sellest tulenevalt kasutatakse mõistet "monoliit" üha enam, kui halvustavat väljendit, nii nagu ka seda tehakse ka pärandsüsteemde korral ("[[:en:Legacy system|legacy]]"). Monoliiti tuleks aga pidada arhitektuuriliseks stiiliks ja arendus mustriks. Kuna stiilid ja mustrid peavad sobituma vajaduspõhiselt siis on monoliitsüsteemidel olema alati õigustatud koht IT-süsteemide arhitektuuris.
Viited.
[[Kategooria:Tarkvaraarendus]]