𝗘𝘃𝗲𝗻𝘁 𝗦𝘁𝗿𝗲𝗮𝗺, 𝗦𝗵𝗼𝗿𝘁 𝗣𝗼𝗹𝗹𝗶𝗻𝗴, 𝗮𝗻𝗱 𝗟𝗼𝗻𝗴 𝗣𝗼𝗹𝗹𝗶𝗻𝗴 ಇವೆಂಟ್ ಸ್ಟ್ರೀಮ್, ಶಾರ್ಟ್ ಪೋಲಿಂಗ್ ಮತ್ತು ಲಾಂಗ್ ಪೋಲಿಂಗ್
ಹೆಚ್ಚಿನ ಪ್ರಮಾಣದ ಡೇಟಾವನ್ನು ಪಡೆಯುವುದು ಬಳಕೆದಾರರಿಗೆ ಸಮಸ್ಯೆಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ. ಬಳಕೆದಾರರು ಪ್ರತಿಕ್ರಿಯೆಗಾಗಿ ಬಹಳ ಹೊತ್ತು ಕಾಯಬೇಕಾದರೆ, ಅನುಭವವು ನಿಧಾನಗತಿಯದ್ದಾಗಿರುತ್ತದೆ. ಈ ಡೇಟಾ ವಿನಂತಿಗಳನ್ನು (data requests) ನಿರ್ವಹಿಸಲು ನೀವು ವಿವಿಧ ವಿಧಾನಗಳನ್ನು ಬಳಸುತ್ತೀರಿ.
Short Polling ಕ್ಲೈಂಟ್ ನಿಗದಿತ ಅಂತರದಲ್ಲಿ ಸರ್ವರ್ಗೆ ವಿನಂತಿಗಳನ್ನು ಕಳುಹಿಸುತ್ತದೆ. ಸರ್ವರ್ ಪ್ರತಿ ವಿನಂತಿಗೆ ತಕ್ಷಣವೇ ಪ್ರತಿಕ್ರಿಯಿಸುತ್ತದೆ. ಹೊಸ ಡೇಟಾ ಲಭ್ಯವಿದೆಯೇ ಅಥವಾ ಇಲ್ಲವೇ ಎಂಬುದನ್ನು ಇದು ಕ್ಲೈಂಟ್ಗೆ ತಿಳಿಸುತ್ತದೆ. ನಿರಂತರ ವಿನಂತಿಗಳಿಂದಾಗಿ ಈ ವಿಧಾನವು ಹೆಚ್ಚಿನ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಬಳಸುತ್ತದೆ.
Long Polling ಕ್ಲೈಂಟ್ ಸರ್ವರ್ಗೆ ವಿನಂತಿಯನ್ನು ಕಳುಹಿಸುತ್ತದೆ. ಹೊಸ ಡೇಟಾ ಬರುವವರೆಗೆ ಅಥವಾ ಟೈಮ್ಔಟ್ (timeout) ಆಗುವವರೆಗೆ ಸರ್ವರ್ ಆ ವಿನಂತಿಯನ್ನು ತೆರೆದೇ ಇರಿಸುತ್ತದೆ. ಇದು ಖಾಲಿ ಪ್ರತಿಕ್ರಿಯೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.
Event Stream (SSE) ದೊಡ್ಡ ಡೇಟಾ ಸೆಟ್ಗಳು ದೀರ್ಘ ಕಾಯುವಿಕೆಗೆ ಕಾರಣವಾಗುತ್ತವೆ. ನಿಮ್ಮ ಬಳಿ 1,00,000 ಸಾಲುಗಳ ಡೇಟಾ ಇದ್ದರೆ, ಅವನ್ನೆಲ್ಲವನ್ನೂ ಏಕಕಾಲದಲ್ಲಿ ಕಳುಹಿಸುವುದು ನಿಧಾನವಾಗುತ್ತದೆ. ಡೇಟಾವನ್ನು ತುಣುಕುಗಳಾಗಿ (chunks) ಕಳುಹಿಸುವ ಮೂಲಕ ನೀವು ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ಸುಧಾರಿಸಬಹುದು.
Event Stream ಈ ರೀತಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ:
- ಕ್ಲೈಂಟ್ ಸರ್ವರ್ಗೆ ಸಂಪರ್ಕವನ್ನು (connection) ಪ್ರಾರಂಭಿಸುತ್ತದೆ.
- ಸಂಪರ್ಕವು ತೆರೆದೆಯೇ ಇರುತ್ತದೆ.
- ಡೇಟಾ ಸಿದ್ಧವಾದಂತೆ ಸರ್ವರ್ ಅದರ ಸಣ್ಣ ಭಾಗಗಳನ್ನು ಕಳುಹಿಸುತ್ತದೆ.
- ಬಳಕೆದಾರರು ಸಂಪೂರ್ಣ ಡೇಟಾ ಸೆಟ್ಗಾಗಿ ಕಾಯುವ ಬದಲು ತಕ್ಷಣವೇ ಫಲಿತಾಂಶಗಳನ್ನು ನೋಡಬಹುದು.
ಸರ್ವರ್ ಎಲ್ಲಾ ಇವೆಂಟ್ಗಳನ್ನು ಕಳುಹಿಸುವುದನ್ನು ಪೂರ್ಣಗೊಳಿಸುವವರೆಗೆ ಈ ವಿಧಾನವು ಸಂಪರ್ಕವನ್ನು ಸಕ್ರಿಯವಾಗಿರಿಸುತ್ತದೆ. ಇದು ಅಪ್ಲಿಕೇಶನ್ಗಳು ವೇಗವಾಗಿ ಮತ್ತು ಸ್ಪಂದನೀಯವಾಗಿರುವಂತೆ ಮಾಡುತ್ತದೆ.
Source: https://dev.to/anubama_i/event-stream-short-polling-long-polling-54n