Short Polling: nima, qanday ishlaydi va qayerda qo'llaniladi

Muallif: IT Sectr Nashr etilgan: 2026-06-02 O'qish vaqti: 8 daq

Short Polling — bu mijoz va server o‘rtasidagi o‘zaro ta’sir texnikasi bo‘lib, unda mijoz yangilangan ma’lumotlarni olish uchun belgilangan vaqt oralig‘ida HTTP so‘rovlarini yuboradi. Server har bir so‘rovni darhol qayta ishlaydi va o‘zgarishlar bo‘lmasa ham joriy holatni qaytaradi. Amazon Web Services, 2024 ma’lumotlariga ko‘ra, Short Polling amalga oshirish eng oson, ammo eng kam samarali so‘rov usuli bo‘lib, server va tarmoqqa ortiqcha yuk hosil qiladi.

Asosiy fikrlar

  • Short Polling — mijoz ma’lumotlar paydo bo‘lishidan qat’iy nazar belgilangan intervalda HTTP so‘rovlarini yuboradigan texnika.
  • Prinsip — mijoz taymer orqali serverni so‘raydi, server o‘zgarmagan bo‘lsa ham joriy holatni darhol qaytaradi.
  • Soddalik — amalga oshirish serverda asinxron ishlov berishni talab qilmaydi, standart REST endpoint yetarli.
  • Kamchilik — yangilanishlar bo‘lmaganda ortiqcha trafik: har bir so‘rov to‘liq HTTP sarlavhalari va server ishlovini o‘z ichiga oladi.
  • Qo‘llash — oddiy panellar, past so‘rov chastotasi bilan monitoring va real vaqt talablari bo‘lmagan ichki tizimlar.

Short Polling nima

Short Polling — bu mijoz oldindan belgilangan interval bilan serverga HTTP so‘rovlarini yuboradigan va server har bir so‘rovni sinxron ravishda darhol qayta ishlab natijani qaytaradigan kommunikatsiya namunasidir. So‘rov intervali mijoz tomonida taymerlar yordamida o‘rnatiladi va odatda ma’lumotlarning dolzarblik talablariga qarab 1 dan 60 soniyagacha o‘zgaradi.

Short Polling xronologik jihatdan veb-ilovalarda real vaqtni tashkil etishning birinchi mexanizmidir. 2000-yillarning boshlarida, ikkinchi avlod XMLHttpRequest paydo bo‘lishidan oldin, veb-sahifalar tarkibni yangilash uchun <meta http-equiv=”refresh”> yoki davriy iframe qayta yuklashdan foydalanar edi. 2005-yilda AJAX (Asynchronous JavaScript and XML) texnologiyasining paydo bo‘lishi bilan Short Polling sahifani to‘liq qayta yuklamasdan ma’lumotlarni yangilashning standart yondashuviga aylandi.

Short Polling arxitekturasi

Short Polling arxitekturasi uch komponentni o‘z ichiga oladi: mijoz taymeri, HTTP so‘rovi va server ishlovchisi. Mijoz interval taymerini ishga tushiradi, uning ishga tushishi bilan serverga GET so‘rovi yuboriladi. Server ma’lumotlar bazasiga yoki boshqa manbaga so‘rov bajaradi, javob yaratadi va darhol mijozga qaytaradi. Mijoz interfeysni yangilaydi va keyingi taymer ishga tushishini kutadi. Bu tsikl ilova faol bo‘lgan muddat davomida cheksiz takrorlanadi.

Ortiqcha so‘rovlar muammosi

Short Polling ning asosiy muammosi — muqarrar bo‘sh so‘rovlar. Ma’lumotlar kamdan-kam o‘zgaradigan bo‘lsa, so‘rovlarning aksariyati „o‘zgarish yo‘q” natijasini qaytaradi, tarmoq o‘tkazuvchanligi va protsessor vaqtini ishlov berishga sarflaydi. 5 soniyali so‘rov intervali bilan 10 000 mijoz bo‘lganda server sekundiga 2 000 so‘rov oladi — yangilanish chastotasi daqiqada 1 hodisa bo‘lganda ularning muhim qismi foydasizdir.

Short Polling qanday ishlaydi

Short Polling oddiy tsikl bo‘yicha ishlaydi: mijoz belgilangan davr bilan (masalan, 5000 ms) interval taymerini o‘rnatadi. Har bir taymer ishga tushishida mijoz serverning so‘nggi nuqtasiga, odatda oxirgi yangilanishning vaqt tamg‘asi parametri bilan HTTP GET so‘rovi yaratadi. Server so‘rovni oladi, ko‘rsatilgan tamg‘adan keyin yangi ma’lumotlar mavjudligini tekshiradi va javob qaytaradi — yo yangi ma’lumotlar bilan, yo yangilanish yo‘qligi ko‘rsatkichi bilan.

Short Polling ning muhim sozlash parametri — so‘rov intervali. Juda qisqa interval (3 soniyadan kam) server va tarmoqqa yuqori yuk hosil qiladi. Juda uzun interval (30 soniyadan ko‘p) ma’lumotlarning dolzarbligini pasaytiradi. Optimal interval stsenariyga bog‘liq: monitoring panellari uchun — 5–15 soniya, yangiliklar lentalari uchun — 30–60 soniya, muhim ogohlantirishlar uchun — 1–3 soniya. Interval tanlash har doim ma’lumotlarning dolzarbligi va infratuzilma yuki o‘rtasida murosadir.

Adaptiv so‘rov intervali

Bo‘sh vaqtlarda yukni kamaytirish uchun adaptiv interval qo‘llaniladi: agar bir necha ketma-ket so‘rovlar bo‘sh natija qaytarsa, interval oshiriladi (masalan, 5 dan 15 soniyagacha). Yangi ma’lumotlar paydo bo‘lganda interval minimal qiymatga qaytariladi. Eksponensial kechikish algoritmi (exponential backoff) kamdan-kam yangilanishlarda bo‘sh so‘rovlar sonini 3–5 marta kamaytirishga imkon beradi.

Short Polling-ni JavaScript-da amalga oshirish namunasi

Short Polling ning setInterval va Fetch API dan foydalanadigan mijoz amalga oshirilishini ko‘rib chiqaylik. Funksiya endpoint URL va millisekundlarda so‘rov intervalini qabul qiladi.

js
function startPolling(url, intervalMs) {
    const lastTimestamp = new Date().toISOString();

    const timerId = setInterval(async () => {
        try {
            const params = new URLSearchParams({
                since: lastTimestamp
            });
            const response = await fetch(url + "?" + params);
            const data = await response.json();

            if (data.updates && data.updates.length > 0) {
                renderUpdates(data.updates);
                console.log("Qabul qilindi", data.updates.length, "updates");
            }
        } catch (error) {
            console.error("So‘rov muvaffaqiyatsiz tugadi:", error);
        }
    }, intervalMs);

    return timerId;
}

const timer = startPolling("/api/updates", 5000);
// clearInterval(timer) to‘xtatish uchun

Kod 5 soniyali davr bilan so‘rov intervalini yaratadi va serverga oxirgi yangilanishning vaqt tamg‘asini uzatadi. Server bu parametrdan ma’lumotlarni filtrlash va faqat yangi yozuvlarni qaytarish, uzatiladigan ma’lumot hajmini kamaytirish uchun foydalanishi mumkin. Funksiya so‘rovni to‘xtatish imkoniyati uchun taymer identifikatorini qaytaradi.

Short Polling ning server qismi

Short Polling uchun server amalga oshirilishi juda oddiy — bu GET so‘rovlarini qabul qiladigan va joriy holat yoki ko‘rsatilgan vaqt tamg‘asidan keyin o‘zgartirilgan ma’lumotlar bilan JSON javobini qaytaradigan oddiy REST endpoint dir.

js
const express = require("express");
const app = express();

let items = [];

app.get("/api/updates", (req, res) => {
    const since = req.query.since;
    const filtered = items.filter(item => item.timestamp > since);
    res.json({ updates: filtered });
});

app.listen(3000);

Server since parametrini oladi va vaqt tamg‘asi ko‘rsatilganidan oshgan yozuvlarni filtrlash. Bu yondashuv har bir javobda ma’lumot hajmini minimallashtiradi, faqat o‘sish o‘zgarishlarini qaytaradi. Yangi ma’lumotlar bo‘lmaganda server bo‘sh massiv qaytaradi va mijoz jadval bo‘yicha so‘rovda davom etadi.

Short Polling vs Long Polling

Short Polling va Long Polling bir xil vazifani — serverdan ma’lumotlarni yetkazib berishni — hal qiladi, ammo samaradorlik jihatidan tubdan farq qiladi. Short Polling sobit so‘rov intervalidan foydalanadi, bashorat qilinadigan yuk hosil qiladi, Long Polling esa hodisa sodir bo‘lguncha ulanishni ushlab turadi, bo‘sh javoblar sonini minimallashtiradi.

MezonShort PollingLong Polling
Amalga oshirish murakkabligiPast, standart RESTO‘rta, asinxron ishlov
Yangilanish kechikishiDoimiy, N soniyagachaMinimal, hodisa sodir bo‘lganda
So‘rovlar soniDoimiy, daqiqada N so‘rovHodisalar bo‘yicha, odatda ancha kam
Server yukiKichik intervalda yuqoriUlanishlarni ushlab turish, asinxron ishlov
Bo‘sh vaqtda trafikMaksimal, har bir so‘rov sarlavhalar bilanMinimal, bitta ochiq ulanish
MasshtablashOddiy, holatsiz so‘rovlarMurakkab, umumiy hodisa navbati talab qilinadi

Texnikalar orasida tanlov ma’lumotlarning yangilanish chastotasiga bog‘liq. Agar hodisalar 10 soniyada bir martadan tezroq sodir bo‘lsa — ikkala yondashuv ham solishtirish mumkin bo‘lgan yuk beradi va Short Polling soddaroq bo‘lishi mumkin. Agar hodisalar kamdan-kam bo‘lsa (o‘zgarishlar orasida soatlar yoki daqiqalar) — Long Polling afzalroq, chunki u bo‘sh so‘rovlar yaratmaydi. Oraliq stsenariylar uchun tanlov infratuzilma cheklovlari va WebSocket dan foydalanish imkoniyatiga bog‘liq.

Short Polling qachon qo‘llaniladi

Short Polling ma’lumotlarning dolzarblik talablari past bo‘lgan, soddalik samaradorlikdan ustun bo‘lgan stsenariylarda qo‘llaniladi. Eng tipik holatlar — ichki ma’muriy panellar, past chastotali ogohlantirishli monitoring tizimlari va 15–30 soniyali kechikish maqbul bo‘lgan ilovalar.

  • Monitoring panellari — har 10–30 soniyada yangilanadigan, o‘zgarishlarga zudlik bilan reaktsiya talab qilmaydigan metrikali panellar.
  • Status sahifalari — xizmatlarning mavjudligini tekshirish sahifalari, bu yerda ma’lumotlar 30–60 soniya intervalida yangilanadi va kechikish muhim emas.
  • Analitik hisobotlar — davriy ma’lumot yig‘ish bilan ichki analitika tizimlari, bu yerda 1 daqiqagacha dolzarblik maqbuldir.
  • Oddiy o‘yinlar — real vaqt talablari bo‘lmagan, navbat bir necha soniyada yangilanadigan navbatli ko‘p o‘yinchili o‘yinlar.
  • Sinov — yuk sinovi va nosozliklarni bartaraf etish stsenariylari, bu yerda Short Polling boshqa texnikalar bilan solishtirish uchun mos yozuvlar so‘rov usuli sifatida ishlatiladi.

Muhim cheklov — Short Polling vaqt jihatidan muhim ilovalar (savdo terminallari, favqulodda ogohlantirish tizimlari) uchun mos emas, bu yerda hatto 1 soniyali kechikish ham qabul qilib bo‘lmaydi. Bunday stsenariylarda WebSocket, Server-Sent Events yoki Long Polling dan foydalanish kerak. Short Polling bilan tizimni loyihalashda so‘rov byudjetini hisoblash zarur: 5 soniyali interval bilan 1 000 mijoz bo‘lganda server daqiqada 12 000 so‘rovni qayta ishlaydi, bu tegishli resurs bazasini talab qiladi.

Tez-tez beriladigan savollar

Short Polling nima oddiy so‘zlar bilan?

Short Polling — bu ilova har N soniyada serverdan „yangi ma’lumot bormi?” deb so‘raydi va server hech narsa o‘zgarmagan bo‘lsa ham har safar javob beradi. Bu yangi xat bor-yo‘qligini tekshirish uchun har 5 daqiqada pochta qutisiga yaqinlashishga o‘xshaydi.

Short Polling uchun qanday so‘rov intervalini tanlash kerak?

Optimal Short Polling intervali stsenariyga bog‘liq: monitoring panellari uchun 5–10 soniya, yangiliklar lentalari uchun 15–30 soniya, status sahifalari uchun 30–60 soniya. Interval ma’lumotlarning dolzarbligi va server yuki o‘rtasida murosa bo‘lishi kerak. 10 soniyadan boshlang va test natijalariga ko‘ra sozlang.

Short Polling Long Polling dan nima bilan farq qiladi?

Short Polling — mijoz serverni doimiy intervalda „tortadi”. Long Polling — mijoz bitta so‘rov yuboradi, server esa ma’lumotlar paydo bo‘lguncha uni ochiq ushlab turadi. Short Polling amalga oshirish soddaroq, ammo kamdan-kam yangilanishlarda ko‘proq bo‘sh so‘rovlar yaratadi.

Short Polling qachon WebSocket dan yaxshiroq?

Short Polling WebSocket dan soddaroq va maxsus protokol talab qilmaydi — oddiy HTTP so‘rovlari orqali ishlaydi. Short Polling 10–30 soniyali kechikish maqbul bo‘lgan oddiy ichki tizimlar uchun asosli va WebSocket ni saqlash uchun infratuzilma xarajatlari asossizdir.

Short Polling dan server yukini qanday kamaytirish mumkin?

Adaptiv interval dan foydalaning: yangilanishlar bo‘lmaganda so‘rovlar orasidagi pauzani 2–3 marta oshiring. Serverga faqat o‘sish o‘zgarishlarini qaytarish uchun oxirgi so‘rovning vaqt tamg‘asi bilan since parametri qo‘shing. Backend yukini kamaytirish uchun CDN yoki proksi server tomonida javoblarni keshlang.

Xulosa

  • Short Polling — mijoz yangi ma’lumotlar paydo bo‘lishidan qat’iy nazar taymer orqali HTTP so‘rovlarini yuboradigan sobit intervalda server so‘rovi texnikasi.
  • Prinsip — doimiy yoki adaptiv interval bilan setInterval yoki rekursiv setTimeout orqali davriy so‘rov.
  • Afzallik — maksimal amalga oshirish va nosozliklarni bartaraf etish soddaligi, serverda asinxron ishlov berish va maxsus protokollarni talab qilmaydi.
  • Kamchilik — kamdan-kam yangilanishlarda ortiqcha trafik: to‘liq HTTP sarlavhalari bilan bo‘sh so‘rovlar foydasiz yuk yaratadi.
  • Optimal interval — monitoring uchun 5–15 soniya, past o‘zgarish chastotali ma’lumotlar uchun 15–60 soniya, muhim stsenariylar uchun 1–3 soniya.
  • Solishtirish — Long Polling dan soddaroq, ammo kamdan-kam hodisalarda kam samarali; ishlash va kechikish jihatidan WebSocket dan past.
  • Tavsiya — Short Polling dan faqat past ma’lumot dolzarbligi talablari bo‘lgan oddiy ichki tizimlarda yoki testlarda mos yozuvlar usuli sifatida foydalaning.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing