Нұсқаулықтар

Serverless дегеніміз не? Serverless есептеу қарапайым түсіндірмесі

Serverless — кодты іске қосудың тәсілі, мұнда серверлерді өзіңіз орнатпайсыз да, басқармайсыз да. Кодыңызды бұлттық провайдерге бересіз, ал ол кодты тек бір нәрсе оны іске қосқанда — веб-сұраныс, жүктелген файл, төлем хабарламасы — іске қосады, содан кейін тоқтайды. Әдетте бос тұрған машинаға емес, кодыңыздың шынымен орындалған уақыты үшін ақы төлейсіз.

AI-мен құрғанда serverless неге маңызды

AI арқылы қолданба құрып, хостинг нұсқаларын немесе кодты қарасаңыз, «serverless функциялар», «edge функциялар» немесе «бұлттық функциялар» деген терминдермен кездесесіз. Көптеген хостинг платформалары оларды ұсынады, ал кейбір AI құрастырғыштар backend-ті осылай орналастырады. Бұл үлгіні түсіну үш практикалық сұраққа көмектеседі:

  • Шығын. Ешкім пайдаланбаған кезде қолданбаңыз ақша тұра ма?
  • Жылдамдық. Неге тыныш кезеңнен кейінгі бірінші сұраныс баяуырақ?
  • Шектеулер. Неге ұзақ тапсырма — үлкен есеп жасау, бейнені өңдеу — уақыт асып кетті?

SERVERLESS еместігін білу де пайдалы: backend болмауы емес. Сізде әлі де сервер жағындағы код бар; машиналарды басқа біреу басқарады. Негіздер үшін сервер дегеніміз не бетін қараңыз.

Күнделікті салыстыру

Дәстүрлі сервер — көлік иелену сияқты. Ол әрдайым бар, бірден жүруге дайын, бірақ оны мінесіз бе, жоқ па, сақтандыру, тұрақ, жөндеу үшін ақы төлейсіз.

Serverless — такси шақыру сияқты. Тек сапарларыңызға ақы төлейсіз, ал жүз адам бір уақытта көлікке мұқтаж болса, жүз такси келеді. Бірақ көліктің келуі үшін қысқа күту болуы мүмкін (суық старт), әр сапардың ең ұзақ ұзындығы бар, ал жүргізуші соңғы сапардан сізді есте сақтамайды (функциялар stateless).

Serverless функциялары қалай жұмыс істейді

Ең кең таралған түрінде, functions as a service деп аталатын:

  1. Функцияны жазасыз — бір оқиғаның түрін өңдейтін шағын код, мысалы «/api/bookings-ке POST сұранысын өңде».
  2. Оны орналастырасыз. Провайдер оны сақтап, триггерге байланыстырады: URL, кесте, сақтауға жаңа файл, кезектегі хабарлама.
  3. Оқиға келеді. Провайдер функцияңыздың данасын бастайды (немесе жылы данаға қайта пайдаланады), оны орындайды және нәтижені қайтарады.
  4. Ол өздігінен масштабталады. Бір мезгілде мың сұраныс келсе, провайдер көп даналарды параллель іске қосады, сіздің есептік жазбаңыздың шектеулеріне дейін.
  5. Ол бос тұрады. Трафик тоқтаған кезде даналар өшіріледі. Ешнәрсе іске қосылмаған кезде есептеу үшін ештеңе төлемейсіз.

JavaScript-те шағын serverless функциясы мынадай болуы мүмкін:

export default async function handler(request) {
  const { name } = await request.json();
  return Response.json({ message: `Hello, ${name}` });
}

Серверді іске қосатын, портты ашатын немесе процесті жұмыс істеп тұрғызатын код жоқ. Платформа мұның бәрін өзі басқарады.

«Serverless» сөзі басқа да басқарылатын қызметтер үшін кеңірек қолданылады, олар өздігінен масштабталады және пайдалануға қарай төлем алады — мысалы, бос тұрғанда кідіретін serverless дерекқорлар.

Негізгі терминдер

ТерминМағынасы
Функция (FaaS)Провайдер талап бойынша іске қосатын шағын код бірлігі.
Триггер / оқиғаФункцияны не іске қосады — HTTP сұранысы, файл жүктеу, таймер, кезек хабары.
Суық стартСұранысты өңдемес бұрын функцияның жаңа данасын бастау кезіндегі кідіріс.
ЖылыБұрыннан жұмыс істеп тұрған және бірден жауап бере алатын дана.
StatelessФункция іске қосулар арасында жадты сақтамайды. Сақталуы керек нәрсе дерекқорға немесе қоймаға салынады.
TimeoutБір іске қосуға рұқсат етілген ең ұзақ уақыт. Мысалы, AWS Lambda-ның ең көп мәні — 15 минут; көп платформаның әдепкісі одан әлдеқайда аз.
Edge функцияПайдаланушыларға жақын көптеген орында іске қосылатын функция, жиі қатаңырақ шектеулермен.
Scale to zeroТрафик болмағанда ештеңе іске қоспау және есептеу үшін ештеңе төлемеу.

Жұмыс мысалы: шағын брондау сайты

Йога студиясының брондау сайтына жаңа кесте жарияланғанда әр жексенбі кеш бірден көп кіреді, ал апта басқа күндері өте аз.

  • Әрқашан қосулы серверде студия машинаға 24/7 ақы төлейді, жексенбі кешінің шыңына сай өлшенген, басқа уақытта көбіне бос тұрады.
  • Serverless функцияларымен GET /api/classes және POST /api/bookings функциялар болады. Жексенбідегі асығыс уақытта көп дана автоматты түрде іске қосылады; сейсенбі таңертеңгі тыныш уақытта ештеңе дерлік жұмыс істемейді және шот нөлге жақын болады.

Айырбастар да байқалады. Сейсенбі таңертеңгі сайтты ашқан бірінші адам суық старт үшін қосымша сәт күтуі мүмкін. Дерекқор көп функция данасынан келетін көп қысқа байланысты өңдеуі керек, бұл байланыс пулері қажет етуі мүмкін. Ал студия кейін «барлық адамның жылдық қатысу PDF-ін жасау» тапсырмасын қосқысы келсе, ол функцияның уақыт шегінен асып, басқа жерде іске қосылуы керек болуы мүмкін.

Serverless қай жерде жарасады — және қай жерде жарамайды

Жақсы сәйкес келедіАз сәйкес келеді
Трафигі аз, шұғыл өсетін немесе болжауға келмейтінҮнемі ауыр трафик, мұнда әрқашан қосулы сервер арзанырақ болуы мүмкін
Қысқа сұраныс/жауап тапсырмалары: API, форма өңдегіштер, webhook-тарҰзақ жұмыстар: үлкен бейнені өңдеу, үлкен деректерді импорттау
Серверлерді басқаргысы келмейтін шағын командаларТірі байланыстарды ашық ұстайтын қолданбалар (кейбір чат немесе көп ойыншылық мүмкіндіктер), платформа қолдамаса
Оқиғаларды өңдеу: «файл жүктелгенде, кішкентай сурет жаса»Сұраныстар арасында көп жадты ұстауы керек қолданбалар

Жиі кездесетін түсініспеушіліктер

  • «Serverless деген — backend жоқ». Ол басқаратын серверлер жоқ дегенді білдіреді. Backend кодын әлі жазасыз және қорғайсыз.
  • «Serverless әрқашан арзан». Аз көлемде арзан, бірақ тұрақты жоғары көлемде сұраныс үшін төлем жиналып кетуі мүмкін.
  • «Serverless шексіз масштабталады». Платформаларда параллельдік шектеулер бар, ал дерекқорыңыз функциялардан әлдеқайда бұрын тар жерге айналуы мүмкін.
  • «Функцияда сақталған файлдар келесі жолы болады». Жергілікті сақтау уақытша. Дерекқорды немесе файл қоймасын пайдаланыңыз.
  • «Scale-to-zero — serverless-пен бірдей». Байланысты, бірақ бірдей емес. Кейбір платформалар қолданбаны әдеттегі сервер ретінде іске қосады, ол бос тұрғанда ұйықтап, келесі сұраныста оянады — ұқсас үнемдеу және бірінші сұраныстағы ұқсас кідіріс, бірақ сұраныс сайын функция стиліндегі уақыт шектеусіз.

AI құрастырғыштан не сұрау керек

  • «Бұл backend serverless функциялар ретінде жұмыс істей ме, әлде әрқашан қосулы немесе ұйықтайтын сервер ретінде ме? Бұл шығынға не береді?»
  • «Кейбір тапсырмалар платформаның уақыт шегінен ұзаққа созылуы мүмкін бе? Олай болса, оларды қалай өңдейміз?»
  • «Сақталуы керек барлық нәрсені дерекқорда немесе файл қоймасында сақта, жадта немесе жергілікті файлдарда емес.»
  • «Көп данасы бір уақытта жұмыс істесе, дерекқор қосылымдары қалай басқарылуы керек?»
  • «Қолданба бос тұрғаннан кейінгі бірінші сұраныстағы кідіріс қандай?»

Mythex қолданбаларды қалай хостайды

Mythex өз хостингін serverless функциялар ретінде сипаттамайды. Жариялаған кезде қолданбаңыз Mythex сіз үшін басқаратын қалыпты веб-қолданба немесе контейнер ретінде жұмыс істейді — ешқандай хостингті орнатудың қажеті жоқ. Бұл scale-to-zero: жарияланған қолданбалар мен олардың дерекқорлары бос тұрғанда ұйықтайды және келесі кіруде оянады; ұйықтап тұрған қолданба есептеу үшін ештеңе жұмсамайды, ал қосымша машиналар трафик көп болғанда ғана іске қосылады (Pro тарифі қызметке 3-ке дейін рұқсат береді). Қоса берілген Postgres дерекқоры да 5 минут бос тұрғаннан кейін ұйықтайды және ояу болған уақыты үшін төленеді. Сонымен «қолданғаныңызға ақы төлеу» артықшылығының көбін аласыз, тыныш кезеңнен кейінгі бірінші сұраныстағы кідіріспен бірге. Құжаттағы хостинг шектеулерін қараңыз, сондай-ақ веб-хостинг және хостинг шығынын азайту мақалаларымызды оқыңыз.

Сұрақтар

Қарапайым тілмен айтқанда, serverless нені білдіреді?

Serverless деген — кодыңызды бұлттық провайдерге беріп, оны тек қажет болғанда, мысалы сұраныс келгенде іске қосуы, ал серверлерді өзіңіз орнатпай немесе күтпей-ақ. Әдетте жұмыс істемей тұрған машинаға емес, кодыңыз шынымен орындалған уақыт үшін ақы төлейсіз.

Serverless-те шынымен серверлер жоқ па?

Серверлер бар; сіз оларды басқармайсыз. Провайдер кодыңызды өз машиналарында іске қосады, сұраныстар келгенде бастайды, жүктеме түскенде көбейтеді және бос тұрғанда өшіреді.

Суық старт деген не?

Суық старт — serverless функциясы бос тұрғаннан кейін іске қосылғандағы қосымша кідіріс, себебі провайдер алдымен оның жаңа данасын бастауы керек. Платформаға, тілге және код көлеміне байланысты ол байқалмайтындай болуы да, бір секунд немесе одан да көп болуы да мүмкін.

Serverless қалыпты серверге қарағанда арзан ба?

Трафигі аз немесе тең емес қолданбалар үшін жиі иә, себебі бос тұрғанда дерлік ешнәрсе төлемейсіз. Үнемі ауыр трафигі бар қолданбалар үшін әрқашан қосулы сервер арзанырақ шығуы мүмкін. Бұл пайдалану үлгісіне және провайдердің бағасына байланысты.

Serverless платформаларының мысалдары қандай?

Белгілі мысалдарға AWS Lambda, Google Cloud Run functions, Azure Functions, Cloudflare Workers, сондай-ақ Vercel және Netlify сияқты хостинг платформаларының функция мүмкіндіктері жатады.

Mythex · Pricing · ЖИ көмегімен кез келген нәрсені жасаңыз · Сайттар мен қосымшаларға арналған үлгілер · Mythex салыстыруда · ЖИ-мен қосымша жасау сөздігі · ЖИ-мен қосымша жасауға арналған тегін құралдар · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی 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 简体中文 繁體中文(香港) 繁體中文(台灣)