Kuidas hostida Discordi botti 24/7
Sellel lehel
Discordi boti kirjutamine on lihtne osa. Selle hoidmine 24/7 võrgus — nii et see vastab kell kolm öösel, elab üle krahhi ja taasühendub pärast võrgukatkestust — on koht, kus enamik botte vaikselt hääbub. Bot töötab ainult seni, kuni seda käitav programm on sees, ja sinu sülearvuti ei ole alati sees.
See juhend viib sind tühjast Developer Portalist botini, mis ei maga kunagi. Kõigepealt lood boti ja selle token'i, seejärel valid, kus seda käitada: tasuta oma masinas (ausate mööndustega) või odavas alati töötavas majutuses, mis hoiab selle sinu eest üleval. See kehtib olenemata sellest, kas su bot on tehtud Discord.js või discord.py abil.
Mida „boti hostimine 24/7" tegelikult tähendab
Discordi bot on väike programm, mis logib Discordi sisse ja püsib ühenduses, kuulates sündmusi. „Selle hostimine 24/7" tähendab lihtsalt, et programm töötab peatumata — läbi öö, läbi taaskäivituste ja läbi krahhide (käivitades end ise uuesti). Selleks on vaja kolme asja:
- Boti rakendus ja token. Luuakse üks kord Discord Developer Portalis — token on boti parool.
- Sinu boti kood. Tavaliselt Discord.js (Node.js) või discord.py (Python). See juhend ei sõltu raamistikust; majutuse sammud on samad.
- Miski, mis on alati sees. Ainus nõue, mida inimesed alahindavad — ja kogu põhjus, miks tasuline majutus olemas on.
Kui mõni neist peatub, läheb bot võrgust välja ja kuvatakse su liikmete nimekirjas hallina. Kõik allpool on selleks, et kolmas neist kunagi ei peatuks.
Samm 1: Loo oma bot ja hangi selle token
Iga bot algab Discord Developer Portalis. See osa on tasuta ja võtab paar minutit.
- Loo rakendus. Mine aadressile discord.com/developers/applications, klõpsa New Application ja anna sellele nimi.
- Lisa bot ja kopeeri token. Ava vahekaart Bot, seejärel Reset Token ja kopeeri see. See token on boti parool — kohtle seda vastavalt; igaüks, kellel see on, juhib sinu botti.
Ära kunagi pane token'it oma koodi ega avalikku repositooriumisse. Lekkinud tokenid leitakse ja kuritarvitatakse minutitega. Hoia seda keskkonnamuutujas või oma majutaja saladuste hoidlas ja lae see käitusajal.
- Luba vajalikud intents. Endiselt vahekaardil Bot lülita sisse need Privileged Gateway Intents, mida su bot kasutab (näiteks Message Content, kui see loeb sõnumite teksti).
- Kutsu bot oma serverisse. Menüüs OAuth2 → URL Generator märgi scope'id
bot(jaapplications.commands), vali õigused, mida su bot vajab, ja ava loodud link, et lisada see serverisse, mida sa haldad.
Sinu bot ilmub nüüd liikmete nimekirja — võrgust väljas, sest miski ei käita veel selle koodi. See ongi järgmine valik.
Tee A: Käita see ise (tasuta, tõeliste mööndustega)
Botti saab käitada täiesti ilma majutusarveta. Testimiseks ja õppimiseks on see õige valik — lihtsalt tea täpselt, millega sa nõustud.
- Käita see oma arvutis. Paigalda Node.js või Python, pane oma token
.env-faili, paigalda sõltuvused ja käivita see:npm install node index.js # Discord.js pip install -r requirements.txt python bot.py # discord.py
Bot on võrgus — täpselt nii kaua, kui see terminal on avatud ja su arvuti on ärkvel. - Või kasuta tasuta pilvetaset. Tasuta plaanidega teenused suudavad väikest botti käitada, kuid peaaegu kõik neist panevad jõude rakendused unne, piiravad kuiseid CPU-tunde või vajavad ärkvel püsimiseks keep-alive-nippi — mis sageli katkeb ja rikub nende tingimusi.
Sobib hästi
- Arendus ja testimine — null kulu
- Õppimine, kuidas su bot reaalajas käitub
- Botid, mida sa ei pahanda käsitsi taaskäivitada
Miks see „24/7"-na läbi kukub
- Su arvuti läheb unne, taaskäivitub uuenduste jaoks või sa lihtsalt sulged sülearvuti — bot on võrgust väljas
- Tasuta tasemed lähevad unne, piiravad jõudlust või lõikavad su pärast kvooti ära
- Krahhi korral pole automaatset taaskäivitust
- Töö teevad ära su kodune IP ja elektriarve
Jäta keep-alive-nipid kõrvale — HytHosti boti majutus hoiab su Discordi boti 24/7 võrgus alates 1,50 €/kuus, automaatsete taaskäivitustega.
Vaata boti majutustTee B: Hosti see 24/7 alati töötavas majutuses
Pühendatud boti majutus on väike osa alati töötavast serverist, mis on olemas ühe asja jaoks: hoida su bot töös. HytHosti Discordi boti majutuses algab see paarist eurost kuus ja pole midagi, mida ärkvel hoida. Siin on kogu seadistus:
- Vali plaan ja keel. Vali RAM, mida su bot vajab (500 MB on enamikule bottidele küllaga) ja oma käituskeskkond — Node.js, Python või Java. Plaanid algavad 1,50 €/kuus ja sisaldavad andmebaasi ning varukoopiaid.
- Vormista tellimus. Konteiner luuakse kohe pärast maksmist; su paneeli sisselogimine saabub e-postiga.
- Lae oma kood üles. Lohista oma projekt veebipõhisesse failihaldurisse või laadi see üles SFTP kaudu. Lisa oma token käivitusmuutujana või
.env-faili — mitte koodi. - Määra käivituskäsk. Suuna paneel oma sisenemisfailile (
index.jsvõibot.py); see paigaldab sõltuvused failistpackage.jsonvõirequirements.txtja käivitab boti. - Jäta see tööle. Bot püsib võrgus ööpäev läbi ja käivitab end krahhi korral ise uuesti. Jälgi reaalajas konsooli, muuda faile ja halda varukoopiaid paneelist.
Mille eest sa maksad: bot püsib võrgus eesmärgiga 99,9% tööaega, olenemata sellest, kas su enda seadmed on sees või mitte, see taaskäivitub krahhi korral automaatselt, failid asuvad NVMe SSD-l Voxility DDoS-kaitse taga, ja kui sa jääd hätta, on live-vestluse tugi saadaval 8–23 (Chișinău aja järgi).
Hoia see võrgus: automaatne taaskäivitus ja turvalised tokenid
„24/7" ei ole lihtsalt „üks kord käivitatud" — see on „tuleb ise tagasi". Mõned harjumused eristavad usaldusväärse boti sellest, mis kaob esimesel tõrkel:
- Kasuta protsessihaldurit (ise-majutades). Oma Linuxi masinas käita botti
pm2(Node.js) all võisystemdteenusena, et see käivituks krahhi ja taaskäivituse järel uuesti. Hallatud majutus teeb seda sinu eest. - Lae token keskkonnast. Hoia seda keskkonnamuutujas või oma majutaja saladuste hoidlas ja loe see käitusajal — ära kunagi commiti seda. Kui see peaks lekkima, lähtesta see kohe Developer Portalis.
- Halda taasühendusi. Discord.js ja discord.py taasühenduvad gateway'ga automaatselt; ära ehita loogikat, mis katkestuse korral kõvasti väljub.
- Jälgi oma logisid. Enamik „mu bot läks võrgust välja" mõistatusi on käsitlemata viga, mis protsessi maha võtab — konsool ütleb sulle, milline rida.
RAM, andmebaasid ja skaleerimine
Enamik botte on kerged. Käsu- või moderaatoribot on rahul 500 MB RAM-iga. Rohkem tahad siis, kui bot teeb raskemat tööd:
- Muusikabotid voogesitavad heli ja kasutavad märgatavalt rohkem RAM-i ja CPU-d — vali aste kõrgem.
- Suured botid paljudes serverites hoiavad mälus rohkem olekut; suured guild'ide kogukonnad lähevad kokku arvele.
- Püsivad andmed — tasemed, majandus, seaded — vajavad kohaliku faili asemel andmebaasi, et need taaskäivitusi üle elaksid. Siinsed boti majutuse plaanid sisaldavad seda.
Ainult väga suured botid (umbes 2500+ serverit) vajavad sharding'ut, mida Discord sellises mahus nõuab; sellest allpool on üks protsess kõige lihtsam. Kui üks aste jääb väikeseks, on kõrgemale liikumine paneelis üks klõps — alusta väikselt ja skaleeri siis, kui numbrid seda ütlevad.
Korduma kippuvad küsimused
Ühte käitada võib olla tasuta — oma arvutis või tasuta pilvetasemel — kuid see on harva tõeliselt 24/7. Su arvuti läheb unne ja taaskäivitub ning tasuta tasemed panevad tavaliselt jõude rakendused unne või piiravad su kasutust. Boti jaoks, mis on tõeliselt alati võrgus, on pühendatud boti majutus usaldusväärne valik ja see on odav: plaanid algavad 1,50 €/kuus.
Jah, ja arenduseks on see suurepärane. Konks on selles, et bot on võrgus ainult siis, kui programm töötab ja arvuti on ärkvel — sulge terminal, pane sülearvuti unne või taaskäivita uuenduse jaoks, ning bot kukub võrgust välja ilma automaatse taaskäivituseta. Just seetõttu kolivad botid, mis peavad olema usaldusväärsed, alati töötavasse majutusse.
See tähendab, et boti protsess töötab katkematult ja tuleb ise tagasi — läbi öö, läbi taaskäivituste ja läbi krahhide. Selle saavutamiseks on vaja kahte asja: majutajat, mis kunagi välja ei lülitu, ja automaatse taaskäivituse mehhanismi (protsessihaldur nagu pm2 või automaatne taaskäivitus, mida hallatud majutaja pakub).
Mõlemad on suurepärased. Discord.js (Node.js) on kõige populaarsem, suurima ökosüsteemi ja näidete hulgaga. discord.py (Python) on puhas ja algajasõbralik. Vali keel, milles end kõige mugavamalt tunned — hea majutus toetab Node.js, Python ja Java, nii et sa pole kummalgi juhul lukus.
Enamik botte töötab mugavalt 500 MB peal. Muusikabotid ja paljusid servereid teenindavad botid kasutavad rohkem, seega vali nende jaoks aste kõrgem. Kuna botid on kerged, on majutus odav — see, mille eest sa maksad, on „alati sees", mitte toores jõudlus.
Peaaegu alati üks kolmest asjast: seda käitav masin peatus (arvuti unes, tasuta tase jäi jõude), protsess krahhis ilma automaatse taaskäivituseta või käsitlemata viga tapab selle kindla sündmuse korral — kontrolli konsooli logisid. Selle käitamine alati töötavas majutuses koos automaatse taaskäivitusega kõrvaldab esimesed kaks täielikult.
Hoia oma bot võrgus, kuni sa magad
HytHosti Discordi boti majutus käitab su Node.js, Python või Java botti 24/7 automaatsete taaskäivitustega, andmebaas ja varukoopiad kaasas — alates 1,50 €/kuus, kohe võrgus.
Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours