Skip to content

Serverless funksiyalar ​

Server boshqarmasdan kodni talab boʻyicha ishga tushiring. Har bir chaqiruv oʻz Firecracker microVM'ida bajariladi — AWS Lambda asosidagi xuddi shu yengil-VM texnologiyasi — kuchli izolyatsiya va soniyadan kam sovuq start bilan, chaqiruv boʻyicha toʻlanadi.

Qoʻllab-quvvatlanadigan runtime'lar ​

RuntimeVersiya
Python3.12
Node.js20
Go1.22

Konsoldagi yaratish formasi hozir mavjud runtime'larni koʻrsatadi (gRPC API orqali ListFunctionsRuntimes).

Funksiya yaratish ​

  1. Functions → Create boʻlimini oching.
  2. Runtime tanlang va funksiyaga nom bering.
  3. Kod yozing yoki joylashtiring:
    • Python / Node.js — event qabul qilib, JSON-serializable natija qaytaradigan handler.
    • Go — toʻliq package main; event JSON stdin'ga keladi, natija JSON stdout'ga yoziladi.
  4. Region va xotira hajmini tanlang.
  5. Deploy qiling. Funksiya soniyalar ichida chaqirishga tayyor boʻladi.

Chaqirish ​

Har bir deploy qilingan funksiya oʻzining alohida subdomen'idagi ochiq HTTPS endpoint'ini oladi — uni avtonom edge invoker xizmat qiladi va control plane ishlamay qolganda ham javob beraveradi:

bash
curl -X POST https://{slug}.fn.aralcloud.uz -d '{"name": "world"}'

Funksiya uchun Require API key yoqilgan boʻlsa, kalitni soʻrov bilan birga yuboring:

bash
curl -X POST https://{slug}.fn.aralcloud.uz \
  -H "X-Api-Key: $FN_API_KEY" \
  -d '{"name": "world"}'

Kalitni funksiyaning Triggers boʻlimidan istalgan vaqt almashtirish yoki bekor qilish mumkin. Tez qoʻlda sinash uchun konsoldagi Test amalidan foydalaning; dasturiy boshqaruv va chaqiruv imzolangan gRPC API orqali boradi (nexlayer.function.v1.FunctionService, masalan CreateFunctionsInvoke). Eski control-plane REST trigger (/api/v1/fn/{trigger_token}) bekor qilingan.

Sovuq start ​

Sovuq chaqiruv kodingiz ishlashidan oldin ~250–400ms ichida yangi microVM'ni yuklaydi — koʻpchilik request/response workload'lar uchun yetarlicha tez. Runtime'lar oldindan tayyorlangan image'lar, shuning uchun yuklanishda dependency oʻrnatish bosqichi yoʻq.

Toʻlov ​

Funksiyalar GB-soniyada hisoblanadi — ajratilgan xotira × bajarilish vaqti. Funksiya boʻsh turganda hech narsa hisoblanmaydi; faqat kodingiz haqiqatan ishlagan millisekundlar uchun toʻlaysiz. Foydalanish har bir funksiya uchun Metrics boʻlimida koʻrinadi.

Loglar va xatolar ​

Har bir chaqiruvning stdout/stderr va exit holati yoziladi va funksiyaning Invocations boʻlimida koʻrish mumkin, runtime xatolari uchun toʻliq traceback bilan.

Yana qarang ​