V skratke, websocket je nieco ako normalny socket, len sa to honosne nazyva, cize mas "otvorenu" linku ,typicky, obojsmernu.
Pri RESTe (normalny HTTP GET/POST) nevies naviazat komunikaciu obojsmerne (pozeraj sa z pohladu chcem poslat data nejakym smerom), server vie odpovedat iba na poziadavku klienta.
Niekolko vyhod:
Server nemusi pracne inicializovat HTTP spojenia pri REST spojeni (nejaka poziadavka), co setri cas aj systemove prostriedky.
Websockety ti umoznuju normalne programovacie paradigma ak mas viacuzivatelsku aplikaciu.
Cize, mozes si to predstavit takto, mas komunikator medzi 3 uzivatelmi. 1 posle text serveru, ako server moze synchronizovat data s dalsimi 2 klientami?
Jednoducho nijako, potrebujes robit nejake oddrby. Napriklad v klientskej applikacii to mas ako while(true){ spytaj_sa_servera_na_novy_text();}
Hlavna nevyhoda websocketov:
Musis sa starat o spojenie.
Inak REST je urcita paradigma pri navrhovani aplikacii, kazdopadne tiez som to pouzil v texte.