Sobes.tech
Middle

Milliste arhitektuuri tüüpidega olete oma töös kokku puutunud?

sobes.tech AI

Vastus AI-lt

Minu töös olen kokku puutunud järgmiste arhitektuuritüüpidega:

  • Monoliitne arhitektuur: Traditsiooniline lähenemine, kus kõik komponendid on tihedalt seotud ja paigutatud kui üks tervik. Algfaasis lihtne arendada, kuid keeruline skaleerida ja muudatusi teha.
  • Mitmekihiline (N-Tier) arhitektuur: Rakenduse jagamine loogilisteks kihtideks (Esitlus, Ärilogika, Andmejuurdepääs). Pakub paremat modulaarset struktuuri ja hallatavust võrreldes monoliidiga.
  • Mikroteenuste arhitektuur: Rakendus jaguneb väikesteks, sõltumatuteks teenusteks, millest igaüks täidab kindlat ärifunktsiooni. Teenused suhtlevad võrgus. Kõrge skaleeritavus, paindlikkus ja vastupidavus, kuid nõuab keerukamat infrastruktuuri ja juhtimist.
  • Teenustele orienteeritud arhitektuur (SOA): Arhitektuur, mis on üles ehitatud äriteenuste ümber, mis on kättesaadavad standardiseeritud protokollide kaudu. Suunatud funktsionaalsuse korduvkasutusele.
  • Kihiline arhitektuur: Tavaliselt hõlmab esitlus-, rakendus-, domeeni- ja infrastruktuuri kihti. Keskendub äriloogika (Domeeni) ja tehniliste detailide (Infrastruktuur) eraldamisele.
  • Heksagonaalne arhitektuur (Ports and Adapters): Püüd on isoleerida põhineb äriloogika väliste sõltuvuste (andmebaasid, kasutajaliides, välised teenused) portide ja adapterite kaudu. Parandab testitavust ja paindlikkust.
  • Sündmuspõhine arhitektuur (Event-Driven Architecture - EDA): Komponendid suhtlevad sündmuste avaldamise ja tellimise kaudu. Sobib asünkroonsete protsesside ja kõrge eraldatuse tasemega süsteemidele.

Enamasti olen töötanud mitmekihilise ja monoliitse arhitektuuriga algusfaasides ning osalenud monoliitide refaktoreerimisel mitmekihiliseks ja vähem mikroteenustepõhiseks arhitektuuriks. Kasutanud olen kihilise ja heksagonaalset arhitektuuri põhimõtteid suuremate süsteemide eraldi moodulite projekteerimisel.