Sobes.tech
Middle+

Ինչպե՞ս է հեռախոսը ստանում տեղեկություն, որ ինչ-որ բան փոխվել է վեբ ինտերֆեյսում։

sobes.tech AI

Պատասխան AI-ից

Տելефон (կամ ցանկացած այլ հաճախորդային սարք) կարող է ստանալ փոփոխությունների մասին տեղեկատվություն վեբ ինտերֆեյսում մի քանի եղանակներով.

  • Polling / Long Polling
  • WebSockets
  • Server-Sent Events (SSE)
  • Webhook (քիչ կիրառելի է ուղղակի թարմացումների համար վեբ ինտերֆեյսում, ավելի շատ միջծառայողական փոխազդեցության համար, բայց կարող է նախաձեռնող լինել հաճախորդի վրա թարմացումների):
Մեթոդ Նկարագրություն Առավելություններ Թերություններ
Polling Հաճախորդը համակարգում է հաճախակի հարցումներ սերվերին՝ ստանալու համար թարմացումներ: Պարզ իրականացման մեթոդ: Բարձր բեռ սերվերի վրա հաճախակի հարցումների դեպքում; ուշացում թարմացումների ստացման ժամանակ:
Long Polling Հաճախորդը ուղարկում է հարցում, որը սերվերը պահում է բաց, մինչև որ հայտնվի թարմացում կամ չանցնի ժամանակային սահմանափակումը. Երբ թարմացումը ստացվում է, սերվերը պատասխան է ուղարկում և հաճախորդը անմիջապես նոր հարցում է ուղարկում: Փոքր հարցումներ, քան սովորական polling-ը; թարմացումները գալիս են արագ: Սերվերը պետք է պահի շատ բաց կապեր; ավելի բարդ է կարգավորել, քան polling-ը:
WebSockets Երկու ուղղությամբ մշտական կապ՝ հաճախորդի և սերվերի միջև: Կապի հաստատումից հետո, երկու կողմերն էլ կարող են փոխանակել տվյալներ ցանկացած ժամանակ առանց նոր HTTP հարցումների: Թարմացումները գալիս են անմիջապես; ցածր ուշացում; արդյունավետ օգտագործում ռեսուրսների (հետ կապի հաստատումից հետո): Պահանջում է մշտական կապի պահպանում; անհամատեղելի է հին պրոքսիների/ֆայլմուարների հետ:
SSE Միակողմանի կապ սերվերից հաճախորդին (սերվերը ուղարկում է տվյալներ HTTP-հարցման պատասխանով, պահելով կապը բաց): Պարզ իրականացման մեթոդ հաճախորդի կողմում (օգտագործում է ստանդարտ HTTP); ավտոմատ վերականգնում կապը: Միակողմանի (հաճախորդը չի կարող ուղարկել տվյալներ սերվերին այս ալիքով); քիչ ֆունկցիոնալություն, քան WebSockets:

Ամենատարածված մեթոդները դինամիկ վեբ ինտերֆեյսների համար, որտեղ թարմացումները պետք է լինեն հնարավորինս արագ, դա WebSockets և SSE են: Polling-ը օգտագործվում է այն դեպքերում, երբ բարձր արձագանքողականությունը չի կարևոր, կամ որպես պահեստային մեխանիզմ իրական ժամանակի տեխնոլոգիաների համար: Long Polling-ը հնացած մեթոդ է, որը փոխարինվել է WebSockets և SSE-ով։