Oplossingen · Bots
Een VPS voor een Telegram-bot
Een bot gebruikt in rust minder dan honderd megabyte en is vooral aan het wachten, dus de machine is bijna nooit de beperking: U1-1 voor $6.90 per maand draait er prima een. Wat uw factuur echt bepaalt, is media, en of u uw eigen Bot API-server draait. Beide zijn een rekensom, en beide staan hieronder.
De beslissing onder de beslissing
Webhook of long polling
Dit, niet het pakket, bepaalt of uw bot een domein, een certificaat en een open poort nodig heeft.
Long polling
Uw bot maakt een uitgaande verbinding met Telegram en wacht op updates. Geen domein, geen TLS-certificaat, geen poort open naar het internet, werkt achter NAT. Het is de snelste manier om iets aan de praat te krijgen en voor de meeste bots een prima blijvende oplossing.
Webhook
Telegram maakt verbinding met u. Vereist een openbaar adres, een geldig certificaat en een open poort (allemaal mogelijk met elk pakket hier), en in ruil daarvoor is er geen polling-lus en schaalt het beter onder echte belasting. Stap over wanneer belasting of latentie daarom vraagt, niet eerder.
De rekensom
Hoeveel bots een pakket echt aankan
Bots = (RAM − 300 MB besturingssysteem) ÷ wat één bot inneemt. De twee kolommen zijn een stateless commandobot en een bot met een ORM, een scheduler en een cache.
| Pakket | RAM | Lichte bots | Zware bots | Dataverkeer | Prijs | Implementeren |
|---|---|---|---|---|---|---|
| U1-1Eén bot, elke publieksgrootte | 1 GB | 12 | 4 | Unmetered | $6.90 | Implementeren |
| C1-1-25Eén bot, met verkeersmeting maar goedkoop | 1 GB | 12 | 4 | 1 TB | $9.90 | Implementeren |
| GL2-4Meerdere bots, of een bot met een database | 4 GB | 63 | 25 | Unmetered | $11.90 | Implementeren |
| BD-8Een zelf gehoste Bot API-server | 8 GB | 131 | 52 | 32 TB | $12.90 | Implementeren |
Het aantal gebruikers van uw bot zit niet in deze rekensom, omdat het niet in het probleem zit: Telegram geeft uw proces updates één voor één in plaats van een verbinding per gebruiker te openen. Wat het antwoord verandert, is status die u zelf bijhoudt: een grote cache, een database in het proces, een model.
Het getal dat de factuur bepaalt
Media, niet geheugen
Gemiddelde bestandsgrootte × berichten per dag × 30. Beide richtingen tellen: een ontvangen bestand is ook verkeer.
| Wat de bot verplaatst | 100/dag | 5,000/dag | 50,000/dag |
|---|---|---|---|
| Alleen tekstEen commando en een antwoord. Praktisch gratis. | < 1 GB | < 1 GB | 3 GB |
| Foto'sEen gecomprimeerde afbeelding, verzonden en ontvangen. | < 1 GB | 44 GB | 439 GB |
| Spraakberichten en korte videoDe gebruikelijke belasting van een communitybot. | 9 GB | 439 GB | 4.3 TB |
| Documenten en lange videoHet eigen downloadplafond van Telegram voor een gewone bot. | 59 GB | 2.9 TB | 28.6 TB |
Het enige dat de machine verandert
Een bot op de openbare Bot API kan bestanden tot 20 MB downloaden en tot 50 MB uploaden (de limieten van Telegram, niet de onze), en de bestanden komen nooit op uw schijf. Draait u uw eigen Bot API-server, dan wordt het plafond 2 GB en komt elk bestand op uw server terecht. Vanaf dat punt zijn schijf en dataverkeer niet langer bijzaak: BD-8 biedt 100 GB SSD en 32 TB voor $12.90, en dat is de opzet die daarbij past. Doet u dat niet, betaal er dan ook niet voor.
Eerlijk gezegd
Wat wij zelf zouden kopen
We draaien zelf een Telegram-bot. Dit is de machine waarop we die zouden zetten.
Voor één bot
U1-1 · $6.90/mnd
1 core, 1 GB, 15 GB SSD, en geen verkeersmeter: een bot die onverwacht media gaat verplaatsen, kan dus geen onverwachte rekening opleveren. Zet de bot onder systemd met Restart=always, en de enige resterende manier waarop hij uitvalt is uw eigen code. Groeit u eruit, dan is een bot verhuizen niet meer dan een map en een token kopiëren.
Vragen