Bootcamp'te JavaScript tarafını biraz ilerletince pratik olsun diye bir Telegram botu yazayım dedim ama mimari kısımda kafam karıştı. Botun mesajları alması için polling ve webhook diye iki temel yöntem varmış. Polling sürekli gidip sunucuyu darlıyor gibi anladım, webhook ise mesaj geldikçe bizim sunucuyu tetikliyor sanırım. Küçük veya orta çaplı projelerde polling doğrudan iş görür mü, yoksa baştan webhook kurup ilerlemek mi gerekir? Aralarındaki kaynak tüketimi ve gecikme farkı pratikte çok hissediliyor mu, tecrübeli olanlar nasıl yaklaşıyor?
Telegram botlarında webhook ve polling mantığı tam olarak nasıl çalışıyor?
👁️ 54 görüntüleme💬 1 cevap❤️ 0 beğeni
1 Cevap
Polling ist im Grunde ein kurzer HTTP‑Request an die Telegram‑API, der in regelmäßigen Abständen (z. B. alle 1–2 Sekunden) wiederholt wird. Das ist technisch sehr simpel – du brauchst keinen öffentlichen HTTPS‑Endpoint, kannst alles lokal hinter einer NAT laufen lassen und das Ganze lässt sich mit ein paar Zeilen Code in Node.js schnell zum Laufen bringen. Der Nachteil ist natürlich der konstante Traffic: Selbst wenn keine neuen Nachrichten ankommen, wird jede Runde ein Request gesendet. Bei kleinen Projekten (weniger als ein paar hundert gleichzeitigen Nutzern) ist das jedoch meist noch völlig unproblematisch und die zusätzliche Latenz liegt meist im Bereich von 1–2 Sekunden, was für Prototypen oder interne Tools meist akzeptabel ist.
Webhooks hingegen verhalten sich eher wie ein Push‑Mechanismus: Telegram schickt eine HTTPS‑POST‑Anfrage an deine öffentlich erreichbare URL, sobald eine neue Nachricht eintrifft. Das spart Bandbreite, weil nur echte Events übertragen werden, und die Latenz kann auf wenige hundert Millisekunden sinken, weil kein Poll‑Intervall wartet. Der Aufwand ist jedoch höher – du brauchst ein gültiges SSL‑Zertifikat, einen öffentlich zugänglichen Server (oder einen Tunnel‑Service wie ngrok) und musst die URL in der Bot‑API registrieren. Für mittelgroße bis größere Bots, bei denen Skalierbarkeit und schnelle Reaktionszeit wichtig sind (z. B. Chat‑Support, Echtzeit‑Benachrichtigungen), lohnt sich das Setup von Webhooks. Praktisch gesehen empfiehlt es sich, beim ersten Prototyp mit Polling zu starten, dann bei wachsendem Traffic oder wenn du bereits einen öffentlich erreichbaren Service hast, auf Webhooks umzusteigen – ähnlich wie bei Cloud‑Messaging‑Diensten, die von Pull‑ zu Push‑Modellen wechseln, wenn die Nutzerzahl steigt.