Overview of SlimFaas features and capabilities
mainSlimFaas is a lightweight, plug-and-play Function-as-a-Service (FaaS) platform designed for Kubernetes, Docker-Compose, or Podman-Compose. It focuses on an autoscaling-first design with several key capabilities:
- Two-Phase Autoscaling:
0 → N(Wake-up): Driven by HTTP history, time-based schedules, and Kafka topic activity (via SlimFaas Kafka).N → M(Scaling): Driven by Prometheus metrics using a built-in PromQL evaluator.
- Function Types: Supports both synchronous (HTTP) and asynchronous (queued) functions, as well as one-off, batch, and scheduled (cron) jobs.
- Data Management:
- Data Sets (
/data/sets): A Redis-like KV store for small JSON/blobs (max 1 MiB) with millisecond TTL and atomic counters. - Data Files (
/data/files): Stream-first endpoints for ingesting and serving temporary files of any size.
- Data Sets (
- Internal Events: Built-in publish/subscribe mechanism to broadcast events to all replicas of a function without an external bus.
- Security: Supports private functions (cluster-only) and public functions (via Ingress/API Gateways).
- Observability: Built-in User Interface for monitoring functions, jobs, and queues, plus a "Mind Changer" REST API for inspecting state and waking functions on demand.