Hajusrakenduste alused

Hajus – Распределённая

Mis on Hajusrakendus ?

  • Töötab rohkem kui ühes arvutis
  • Osad suhtlevad omavahel võrgu kaudu
  • Lihtsaim variant on klient ja server (kaks osa)
    • Näiteks: veebisait, mis on jaotatud front- ja back-end proejktideks
      • Näide: front-end: React/Vue…/vanilla JS
      • Näide: back-end: Node/PHP/Ruby/Java/C++/…
  • Keerulisem variant: mikroteenuste arhitektuur
    • User SERVICE, Companies SERVICE, Notifications SERVICE, Messages SERVICE, Payments SERVICE.
    • RestAPI kasutada

Eelised

  • Tööjaotus (Iga meeskond teeb üks valitud töö, nt – kasutajate administreerimine)
  • Skaleeritavus (ressurside jagamine)
  • Taaskasutus (RE-use, tee sate müü üks ressurse)

Puudused

  • Rohkem tööd
  • Keerulisem arhitektuur
  • SSR raskem (ServerSideRendering)

Andmeformaadid

  • XML
    • Võimaldab valideerida
    • Võimaldab stililehte kasutada
  • JSON
    • Lakooniilsem lihtsam lugeda
    • Populaarsem

Andmevahetus

  • HTTP (ISO OSI mudelis 7 kiht)
    • Laialt levinud
    • Stateless
  • Puhas TCP (4 kiht)
    • Võimaldab ühendust katkematuna hoida
  • Websocket
    • WebSockets on protokoll kahepoolseks reaalajas suhtluseks kliendi ja serveri vahel ühe pikaajalise ühenduse kaudu.

OSI

HTTP

  • Meetodid
    • GET
    • POST
    • PUT
    • DELETE
    • PATCH, OPTIONS, jm
  • Staatuskoodid
    • 2xx – head
    • 3xx – suunamised
    • 4xx – kliendid vead
    • 5xx – serveri vead