Sobes.tech
Junior

Опишите неколико начина комуникације између сервера и клијента.

sobes.tech АИ

Одговор од АИ

Najčešće:

  1. REST (Representational State Transfer): Arhitektonski stil koji koristi standardne HTTP metode (GET, POST, PUT, DELETE) za interakciju sa resursima na serveru. Server odgovara podacima, obično u JSON ili XML formatu. Pogodno za većinu standardnih veb aplikacija.

  2. WebSocket: Protokol koji pruža pun-dupleks komunikaciju putem jednog TCP konekcije. Omogućava serveru i klijentu da razmenjuju poruke u realnom vremenu bez potrebe za novim HTTP zahtevima. Koristi se za čatove, online igre, obaveštenja.

  3. Server-Sent Events (SSE): Protokol koji omogućava serveru da šalje jednostrane ažuriranja klijentu putem HTTP veze nakon inicijalnog zahteva. Klijent ne može da šalje podatke nazad u ovom povezivanju. Koristi se za streaming podataka od servera ka klijentu.

  4. GraphQL: Jezik upita za API. Klijent sam određuje koja mu data trebaju. Server vraća samo tražene podatke, čime se smanjuje količina prenesenih podataka i izbegava redundancija.

  5. RPC (Remote Procedure Call): Metod koji omogućava klijentskoj aplikaciji da pozove funkciju ili proceduru koja se izvršava na udaljenom serveru. Postoje različite implementacije (gRPC, Thrift).

Pri izboru metode komunikacije, uzimaju se u obzir zahtevi aplikacije: potreba za razmenom podataka u realnom vremenu, obim prenesenih podataka, složenost upita itd.