Juhendid

Kuidas vähendada oma rakenduse hostingukulusid

Hostingukulude vähendamiseks selgita kõigepealt välja, mis tegelikult töötab ja miks, seejärel lase kõigel magada, kui keegi seda ei kasuta. Hostides, mis skaleeruvad nullini, maksavad tühjalt seisvad rakendus ja magav andmebaas väga vähe, seega suurimad säästud tulevad tavaliselt sellest, et eemaldad selle, mis neid ärkvel hoiab — kõige sagedamini koodi, mis kontrollib andmebaasi iga paari sekundi tagant — ning seejärel vähendad ribalaiust ja kustutad rakendused, mida keegi ei kasuta.

Enamikul väikestel rakendustel pole liiklusprobleemi. Neil on probleem „midagi on alati sees”. See juhend näitab, kuidas seda leida ja parandada, koos viipadega, mida saad anda AI rakenduste ehitajale.

Mille eest tegelikult maksad

Väikeste rakenduste hostingu arve koosneb mõnest asjast. Kui teada, milline on suur, tead, kuhu vaadata.

KuluMis seda ajabTavaline parandus
Arvutusressurss (server)Masina suurus ja tundide arv, mil see töötabLase tal magada; vali õige suurus
AndmebaasSelle suurus ja aeg, mil see on ärkvelLõpeta pidevad päringud, et see saaks magada
RibalaiusKui palju andmeid külastajad alla laevadSuru pilte kokku, vahesta faile
SalvestusruumFailid ja andmed, mida hoiadKustuta vanad üleslaadimised, logid ja varukoopiad, mida ei vaja
Kolmandate osapoolte API-dPäringud AI-mudelitele, kaartidele, e-kirjadele, SMS-ideleVahesta tulemusi, sea piirangud

Paljud kaasaegsed hostid, sealhulgas Mythex, skaleeruvad nullini: kui keegi rakendust ei kasuta, server peatub ja arvutusressursi eest ei maksta midagi, kuni järgmine külastus selle uuesti ärkab. See muudab küsimuse: mitte „kui suur mu server on?”, vaid „miks mu server on ärkvel?”

Samm 1: vaata, kuhu raha läheb

Enne midagi muutmist ava oma hostiteenuse kasutuslehekülg ja leia:

  • Milline projekt maksab kõige rohkem. Sageli on üks rakendus enamik arvest.
  • Milline kategooria: arvutusressurss, andmebaas, ribalaius või salvestusruum.
  • Millal see kulutab. Ühtlane joon öösel, kui kasutajaid pole, on vihje, et midagi hoiab rakenduse ärkvel.

Mythexis näitab kasutuse üksikasjad viimase 30 päeva jaotust Build (AI agent) ja Run (hosting, ribalaius, andmebaas ja failide salvestus) kaupa, koos projektide kaupa jaotusega.

Samm 2: lase tühjad rakendused ja andmebaasid magada

See on enamiku väikeste rakenduste jaoks tegelik hoob. Andmebaas, mis läheb tühikäigul magama ja ärkab järgmise päringu peale, maksab vaiksetel tundidel peaaegu midagi. Andmebaas, mida päritakse iga paari sekundi tagant, ei lähe kunagi tühikäigule, seega maksad selle eest terve päeva.

Mythexi hostingupiirangud selgitavad, kuidas see avaldatud rakenduste puhul toimib: magav rakendus ei maksa arvutusressursi eest midagi, andmebaas algab väikseimal suurusel, kasvab kui on hõivatud, läheb pärast 5 tühikäigu minutit magama ja selle eest makstakse suuruse ja ärkvel oldud aja korrutise alusel. Rakendus, mis päritab oma andmebaasi isegi kord iga paari minuti tagant, päeval ja öösel, arveldatakse seega nagu oleks ta alati hõivatud — samal ajal kui sama rakendus ilma taustapäringuteta maksab väga vähe.

Tavalised asjad, mis rakendust ärkvel hoiavad:

  • Pollimine. Leht küsib serverilt iga 2–5 sekundi tagant „kas on midagi uut?”. Jäta see vahekaart ühele sülearvutile lahti ja andmebaas ei lähe kunagi magama.
  • Automaatselt värskendatavad armatuurlauad, mis laadivad andmeid taimeri järgi, isegi kui keegi ei vaata.
  • Uptime-monitorid, mis pingivad rakendust iga minut.
  • Taustatsüklid serveri koodis — setInterval, mis puhastab või sünkroniseerib andmeid igavesti.
  • Ajastatud „hoia-elus” päringud, mille keegi lisas, et vältida aeglast esimest külastust — need töötavad unerežiimi ennetamisega, mis just maksab raha.

Palu AI-l need üles leida:

Vaata koodi läbi ja leia kõik, mis töötab taimeri järgi või päritakse andmebaasi korduvalt: pollimine, setInterval, automaatne värskendamine, taustatsüklid. Loetle iga üks, kui sageli see töötab ja kas see töötab siis, kui keegi lehte ei vaata. Ära veel midagi muuda.

Seejärel paranda need ükshaaval:

Armatuurlaud päritakse /api/orders iga 3 sekundi tagant. Muuda see nii, et andmeid värskendatakse ainult siis, kui brauseri vahekaart on nähtav, ja iga 60 sekundi tagant 3 sekundi asemel. Lisa käsitsi värskenduse nupp.

Kui su rakendus tõesti vajab reaalajas uuendusi (vestlus, otseskoor), küsi, kas see saab uuendusi saata ainult siis, kui midagi muutub, selle asemel et pidevalt küsida. Paljude rakenduste jaoks piisab sellest, et „värskenda, kui kasutaja tuleb tagasi vahekaardile”.

Samm 3: sobita serveri suurus

Suuremad masinad maksavad tunnis rohkem. Paljud AI-ehitatud rakendused alustavad vaikesuurusega, mis on piisav; probleemid tulevad sellest, et küsitakse „rohkem võimsust”, et parandada aeglust, mis oli tegelikult aeglane päring.

  • Hoia väikseim suurus, mis teenindab sinu liiklust ilma vigadeta.
  • Kui näed mälu tõttu kokkujooksmisi, küsi esmalt AI-lt, kas rakendus laadib mällu liiga palju (kogu tabeli asemel ühe lehe tulemused).
  • Lisa masinaid ainult siis, kui on mõõdetud liiklus, mis neid nõuab.

Mythexis valitakse masina suurus avaldamisel vastavalt rakenduse vajadusele, ning lisamasinad käivituvad ainult raske liikluse korral ja lähevad uuesti magama, kui see langeb. Kulu järgib suurust, seega palu vestluses väiksemat suurust, kui arvad, et see on liiga suur.

Samm 4: vähenda ribalaiust

Ribalaius on see, mida külastajad alla laevad. Pildid on tavaliselt suurim osa.

  • Suru pilte kokku ja paku kaasaegseid formaate, näiteks WebP või AVIF.
  • Muuda piltide suurust vastavalt sellele, kuidas neid kuvatakse. 4000-pikslilist fotot, mida kuvatakse 400-pikslise pisipildina, laetakse alla enamik asjatult.
  • Laadi pildid, mis on esimesest ekraanist allpool, alles siis, kui neid vaja on (lazy-load).
  • Vahesta staatilised failid (skriptid, stiilid, pildid), et naasvad külastajad neid uuesti alla ei laeks. Vaata mis on vahesta.
  • Ära lase rakendusel saata suuri faile igal lehevaatamisel.

Kontrolli iga pilti rakenduses. Muuda nende suurus vastavalt suurimale kuvamissuurusele, konverteeri need WebP-ks ja laadi kõik, mis on esimesest ekraanist allpool, alles siis, kui vaja. Ütle mulle kogumaht enne ja pärast.

Kiiremad lehed ja väiksem ribalaius käivad tavaliselt koos — vaata kuidas oma veebisaiti kiiremaks teha.

Samm 5: puhasta ära see, mida keegi ei kasuta

  • Eemalda vanad rakendused avaldamisest — katsetusjuurutused, lõppenud katsed, eelmise aasta sündmuse leht.
  • Kustuta vanad üleslaadimised, logid ja eksportfailid, mida ei vaja.
  • Kustuta jagatud eelvaatluse lingid, mida enam ei kasuta. Mythexis käivitab eelvaatluse lingi avamine projekti ja kulutab sinu krediite, seega unustatud link, mida keegi jätkuvalt avab, maksab ikka.
  • Eemalda kasutamata teenused — API-server või töötaja, mida rakendus enam ei kutsu.

Samm 6: kaalu staatilist saiti

Kui su sait ei sisalda sisselogimisi, salvestatud kasutajaandmeid ega serveriloogikat — turundussait, portfell, menüü — võib see olla staatiline sait: lihtsad failid, mida serveeritakse CDN-ist. Pole serverit ega andmebaasi, mida käimas hoida. Mythexis ei kuluta staatilised saidid krediite, kui nad lihtsalt seisavad.

Sel saidil pole sisselogimist ega salvestatud andmeid. Kas selle saab ümber ehitada staatiliseks saidiks ilma serverita? Mida me kaotaksime?

Samm 7: jälgi tasulisi API-päringuid

Rakendustes, mis kutsuvad AI-mudeleid, kaarte või SMS-e, võivad kolmandate osapoolte arved hostingut varjutada.

  • Nõua sisselogimist kõige eest, mis maksab päringu kohta.
  • Lisa kasutajapõhine piirang (vaata mis on päringute piiramine).
  • Vahesta vastused, mis ei muutu, näiteks sama aadressi geokodeerimine.
  • Sea igal teenusepakkujal kulupiirangud või hoiatused.

Levinud vead

  • Arvamine mõõtmise asemel. Kontrolli kõigepealt kasutuse jaotust; kallis osa ei ole sageli see, mida oodaksid.
  • Suurema serveri ostmine aeglususe parandamiseks. Puuduv andmebaasi indeks või liiga palju andmete laadimine on tavaliselt tegelik põhjus.
  • Kõige pollimine. Iga paari sekundi taimer on põhjus, miks andmebaas peab ärkvel olema.
  • Rakenduse pingimine, et see „soe” hoida. See eemaldab säästu, mida skaleerumine nullini annab. Võta vastu lühike ärkamine esimesel külastusel või maksa tahtlikult pideva töö eest.
  • Vanade juurutuste unustamine. Kasutamata rakendused andmebaaside ja taustatöödega kogunevad vaikselt.
  • Kokku suruemata pildid. Sageli väikeste saitide suurim ribalaiuse kulu.

Kontrollnimekiri

  • Ma tean, milline projekt ja milline kategooria (arvutusressurss, andmebaas, ribalaius, salvestusruum) kõige rohkem maksab.
  • Miski ei päri andmebaasi iga paari sekundi tagant, kui keegi ei vaata.
  • Armatuurlauad värskenduvad mõistliku intervalliga või ainult siis, kui vahekaart on nähtav.
  • Ükski uptime-monitor ega taustatsükkel ei hoia rakendust ärkvel ilma põhjuseta.
  • Server on väikseim suurus, mis töötab.
  • Pildid on suuruse järgi muudetud, kokku surutud ja lazy-loaded; staatilised failid on vahestatud.
  • Vanad rakendused on avaldamisest eemaldatud, vanad failid kustutatud ja kasutamata eelvaatluse lingid eemaldatud.
  • Saidid ilma andmete või sisselogimisteta on staatilised.
  • Tasulistel API-del on sisselogimine, kasutajapõhised piirangud ja teenusepakkuja kulu hoiatused.

Kulude vähendamine Mythexis

Mythex kasutab ehitamiseks ja hostimiseks ühte krediidisaldot, seega hostingu säästud jätavad ehitamiseks rohkem krediite. Mõned Mythexi-spetsiifilised punktid:

  • Avaldatud rakendused ja nende andmebaasid lähevad tühikäigul magama ning ärkavad järgmisel külastusel. Andmebaas läheb magama pärast 5 tühikäigu minutit, seega pideva pollimise eemaldamine on tavaliselt suurim võit.
  • Pro maksab hostingu, andmebaaside, ribalaiuse, failisalvestuse ja eelvaatluse liivakasti eest poole Free-hinnast; AI maksab mõlemal paketil sama. Vaata Krediidid.
  • Saad e-kirja enne, kui madal saldo võiks avaldatud rakenduse peatada, ja peatatud rakendused säilitavad oma andmebaasi ja failid.

Laiema pildi kohta töötamiskulude kohta vaata kui palju maksab rakenduse ehitamine ja mis on veebihosting.

Küsimused

Miks on mu hostingu arve kõrge, kuigi rakendusel on vähe kasutajaid?

Tavaliselt midagi hoiab seda ärkvel. Kood, mis kontrollib andmebaasi iga paari sekundi tagant, uptime-monitor, mis pingib iga minut, või unustatud taustatsükkel võivad hoida serveri ja andmebaasi käimas ööpäev läbi isegi siis, kui külastajaid pole.

Kas magav rakendus maksab raha?

Hostides, mis skaleeruvad nullini, maksab magav rakendus arvutusressursi eest vähe või üldse mitte; tavaliselt maksad siiski salvestatud andmete eest. Mythexis ei maksa avaldatud magav rakendus arvutusressursi eest midagi, ja selle andmebaas läheb magama pärast 5 tühikäigu minutit ning eest makstakse ainult aja, mil see oli ärkvel.

Kas pollimine mõjutab hostingukulusid halvasti?

Kui pärid serverilt andmeid iga paari sekundi tagant, ei saa andmebaas kunagi tühikäiku ja ei saa magada. Päri harvemini, ainult siis, kui keegi vaatab lehte, või saada uuendused serverist ilma neid pärimata.

Kas staatiline sait on hostida odavam kui veebirakendus?

Tavaliselt jah. Staatiline sait on lihtsalt CDN-ist serveeritavad failid, ilma serveri ja andmebaasita, mida peab käimas hoidma. Kui sinu saidil pole sisselogimist ega salvestatud andmeid, on selle ehitamine staatilise saidina üks suurimaid säästuvõimalusi.

Mythex · Pricing · Ehita kõike AI-ga · Veebilehtede ja rakenduste mallid · Mythex võrdluses · Tehisintellektiga rakenduste ehitamise sõnastik · Tasuta tööriistad tehisintellektiga rakenduste ehitamiseks · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)