Sign inSign up

mshelia/taskdaemon

By mshelia

•Updated 10 days ago

High-performance polyglot task daemon. Run handlers in any language via containers. Built in Rust.

Image
1

1.5K

mshelia/taskdaemon repository overview

⁠TaskDaemon

A high-performance, polyglot task processing system built in Rust. Execute handlers written in any language (Python, Node.js, C++, Go, etc.) via containerized workers.

⁠Quick Start

docker run -d \
  -p 8080:8080 -p 50051:50051 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v ./handlers.toml:/app/handlers.toml \
  mshelia/taskdaemon

⁠Features

  • Polyglot handlers via Docker containers
  • Sub-10ms warm container latency with pre-warmed pools
  • SQLite-backed persistent queue with automatic retry
  • Exponential backoff and configurable timeouts
  • HTTP REST and gRPC APIs
  • Prometheus metrics endpoint

⁠Configuration

Create a handlers.toml to define your task handlers:

[handlers.process]
image = "my-handler:latest"
instances = 4
timeout = 30

⁠CLI Options

docker run --rm mshelia/taskdaemon --help
OptionDescription
--workersNumber of worker threads
--http-portHTTP server port (default: 8080)
--grpc-portgRPC server port (default: 50051)
--configHandler config file path

Tag summary

Content type

Image

Digest

sha256:97d25ebd9…

Size

259.6 MB

Last updated

10 days ago

docker pull mshelia/taskdaemon