Сравните Node.js 22, Python 3.12 и Go 1.22: у каждого свой runtime id, Docker image, соглашение по handler и один и тот же invocation protocol после деплоя бандла.
Из коробки поддерживается три рантайма. Выберите рантайм при создании функции — платформа автоматически выберет нужный Docker-образ и настроит протокол вызова.
| Рантайм | Runtime ID | Handler convention |
|---|---|---|
| Node.js 22 | nodejs22 | exports.handler = async (event, context) => … |
| Python 3.12 | python312 | def handler(event, context): … (синхронно или async) |
| Go 1.22 | go122 | func Handler(event, ctx map[string]interface{}) (interface{}, error) |
Node.js 22
index.js
// Gateway HTTP: POST JSON is in event.body (string). Editor Run: the JSON you type is the whole event root. const payload = typeof event.body === 'string' ? JSON.parse(event.body || '{}') : (event || {}); exports.handler = async (event, context) => { // Example: const { name } = payload; return { statusCode: 200, body: JSON.stringify({ message: "Hello from Inquir Compute!" }), }; };
Python 3.12
handler.py
import json def handler(event, context): raw = event.get("body") payload = json.loads(raw) if isinstance(raw, str) else (event if isinstance(event, dict) else {}) # Example: name = payload.get("name") return { "statusCode": 200, "body": json.dumps({"message": "Hello from Inquir Compute!"}), }
Go 1.22
main.go
package main import "encoding/json" func parsePayload(event map[string]interface{}) map[string]interface{} { if s, ok := event["body"].(string); ok && s != "" { var out map[string]interface{} if err := json.Unmarshal([]byte(s), &out); err != nil || out == nil { return map[string]interface{}{} } return out } return event } func Handler(event map[string]interface{}, ctx map[string]interface{}) (interface{}, error) { _ = parsePayload(event) body, _ := json.Marshal(map[string]interface{}{ "message": "Hello from Inquir Compute!", }) return map[string]interface{}{ "statusCode": 200, "body": string(body), }, nil }
Все три рантайма поддерживают горячие лямбды, слои, переменные окружения и SDK наблюдаемости.