𝗣𝗼𝗹𝗹𝗶𝗻𝗴 𝗶𝗻 𝗦𝘆𝘀𝘁𝗲𝗺 𝗗𝗲𝘀𝗶𝗴𝗻

పోలింగ్ (Polling) అనేది ఒక క్లయింట్ సర్వర్ నుండి అప్‌డేట్‌లను పొందడానికి అనుమతిస్తుంది. దీనిని మీ ఆహారం గురించి అడిగే వెయిటర్ తో పోల్చవచ్చు.

ఇందులో మూడు ప్రధాన పద్ధతులు ఉన్నాయి.

Short Polling

క్లయింట్ నిర్ణీత సమయ వ్యవధుల్లో అప్‌డేట్ కోసం అడుగుతుంది. డేటా సిద్ధంగా లేకపోతే, సర్వర్ ఖాళీ రెస్పాన్స్‌ను పంపుతుంది. డేటా వచ్చే వరకు క్లయింట్ ఈ ప్రక్రియను మళ్ళీ మళ్ళీ చేస్తుంది. ఈ పద్ధతి వల్ల అనవసరమైన రిక్వెస్ట్‌లు ఎక్కువగా వస్తాయి.

Long Polling

క్లయింట్ ఒక రిక్వెస్ట్ పంపిస్తుంది మరియు సర్వర్ దానిని ఓపెన్‌గా ఉంచుతుంది. డేటా సిద్ధంగా ఉన్నప్పుడు మాత్రమే సర్వర్ స్పందిస్తుంది. క్లయింట్‌కు రెస్పాన్స్ రాగానే, అది వెంటనే కొత్త రిక్వెస్ట్‌ను పంపుతుంది. ఇది దాదాపు రియల్-టైమ్ (real-time) అనుభూతిని కలిగిస్తుంది. షార్ట్ పోలింగ్‌తో పోలిస్తే, ఇందులో ఖాళీ రెస్పాన్స్‌లు తగ్గుతాయి.

Event Stream

క్లయింట్ మరియు సర్వర్ ఒకే కనెక్షన్‌ను ప్రారంభిస్తాయి. ఒక వైపు నుండి కనెక్షన్ క్లోజ్ చేసే వరకు ఇది అలాగే ఉంటుంది. ఏదైనా ఈవెంట్ జరిగినప్పుడల్లా సర్వర్ క్లయింట్‌కు డేటాను పంపిస్తుంది. ఇది నిజమైన రియల్-టైమ్ కమ్యూనికేషన్.

దీనిలోని లోపం వనరుల (resource) వినియోగం. కనెక్షన్ ఒక నిర్దిష్ట పోర్ట్‌ను ఆక్రమిస్తుంది. కనెక్షన్ ముగిసే వరకు ఆ పోర్ట్ ఇతర పనుల కోసం అందుబాటులో ఉండదు.

మీ ఎంపిక మీ సిస్టమ్ అవసరాలు మరియు మీరు అంగీకరించే లాభనష్టాలపై (trade-offs) ఆధారపడి ఉంటుంది.

Source: https://dev.to/cibani_joe/polling-in-system-design-ph6