Soluzioni · Bot
Un VPS per un bot Telegram
Un bot a riposo usa meno di cento megabyte e passa la vita ad aspettare, quindi la macchina non è quasi mai il vincolo: U1-1 a $6.90 al mese ne esegue uno senza problemi. Ciò che decide davvero la fattura sono i contenuti multimediali, e se eseguite un vostro server Bot API. Entrambi sono questione di calcolo, ed entrambi sono qui sotto.
La decisione dietro la decisione
Webhook o long polling
È questo, non il piano, a decidere se il vostro bot ha bisogno di un dominio, di un certificato e di una porta aperta.
Long polling
Il vostro bot si connette in uscita a Telegram e attende gli aggiornamenti. Nessun dominio, nessun certificato TLS, nessuna porta aperta verso internet, funziona dietro NAT. È il modo più rapido per avere qualcosa in funzione ed è una soluzione definitiva perfettamente valida per la maggior parte dei bot.
Webhook
Telegram si connette a voi. Servono un indirizzo pubblico, un certificato valido e una porta aperta, tutte cose che ogni piano qui consente; in cambio non c'è ciclo di polling e si scala meglio sotto carico reale. Passate quando lo richiedono il carico o la latenza, non prima.
Il calcolo
Quanti bot regge davvero un piano
Bot = (RAM − 300 MB di sistema operativo) ÷ quanto occupa un bot. Le due colonne sono un bot di comandi stateless e uno con ORM, scheduler e cache.
| Piano | RAM | Bot leggeri | Bot pesanti | Traffico | Prezzo | Attiva |
|---|---|---|---|---|---|---|
| U1-1Un bot, pubblico di qualsiasi dimensione | 1 GB | 12 | 4 | Unmetered | $6.90 | Attiva |
| C1-1-25Un bot, traffico conteggiato ma economico | 1 GB | 12 | 4 | 1 TB | $9.90 | Attiva |
| GL2-4Più bot, o un bot con database | 4 GB | 63 | 25 | Unmetered | $11.90 | Attiva |
| BD-8Un server Bot API self-hosted | 8 GB | 131 | 52 | 32 TB | $12.90 | Attiva |
Il numero di utenti del vostro bot non rientra in questo calcolo, perché non fa parte del problema: Telegram consegna gli aggiornamenti al vostro processo uno alla volta invece di aprire una connessione per utente. Ciò che cambia la risposta è lo stato che mantenete voi: una cache grande, un database in-process, un modello.
Il numero che decide la fattura
Contenuti multimediali, non memoria
Dimensione media dei file × messaggi al giorno × 30. Contano entrambe le direzioni: anche un file ricevuto è traffico.
| Cosa trasferisce il bot | 100/giorno | 5,000/giorno | 50,000/giorno |
|---|---|---|---|
| Solo testoUn comando e una risposta. Praticamente gratis. | < 1 GB | < 1 GB | 3 GB |
| FotoUn'immagine compressa, inviata e ricevuta. | < 1 GB | 44 GB | 439 GB |
| Messaggi vocali e brevi videoIl carico abituale di un bot per community. | 9 GB | 439 GB | 4.3 TB |
| Documenti e video lunghiIl limite di download di Telegram per un bot standard. | 59 GB | 2.9 TB | 28.6 TB |
L'unica cosa che cambia la macchina
Un bot sulla Bot API pubblica può scaricare file fino a 20 MB e caricarne fino a 50 MB (limiti di Telegram, non nostri), e i file non toccano mai il vostro disco. Con un vostro server Bot API il limite diventa 2 GB e ogni file arriva sul vostro server. È il punto in cui disco e traffico smettono di essere marginali: BD-8 vi offre 100 GB di SSD e 32 TB per $12.90, il profilo adatto. Se non lo fate, non pagatelo.
Onestamente
Cosa acquisteremmo davvero
Anche noi gestiamo un bot Telegram. Questa è la macchina su cui lo metteremmo.
Per un bot
U1-1 · $6.90/mese
1 core, 1 GB, 15 GB SSD e nessun contatore del traffico: così un bot che inizia inaspettatamente a trasferire media non può generare una fattura imprevista. Mettete il bot sotto systemd con Restart=always e l'unico modo rimasto perché si fermi è il vostro codice. Se vi va stretta, spostare un bot significa copiare una directory e un token.
Domande