A high-performance scheduling engine built in Rust. Designed for scalability and efficiency, Flipper is ideal for managing complex scheduling tasks in distributed systems.
We use a replicated leader-follower approach for horizontal scale and guaranteed execution with seamless failover.
Schedule a job using seconds, a Unix timestamp, UTC datetime or cron expression
{ "schedule_type": "seconds", "schedule_value": "5", "job_label": "email", "job_payload": "{'from': 'demo@flipper.io', 'to': 'jomama@yahoo.com', 'subject': 'Hello', 'body': 'Hello World'}" }, { "schedule_type": "timestamp", "schedule_value": "1704108914.872404", "job_label": "payment", "job_payload": "{'user_id': '123', 'amount': '1000', 'currency': 'USD'}" }, { "schedule_type": "datetime", "schedule_value": "2024-01-01T18:35:14.872404+07:00", "job_label": "sms", "job_payload": "{'from': '1234567890', 'to': '1234567890', 'message': 'Hello World'}" }, { "schedule_type": "cron", "schedule_value": "*/10 * * * * *", "job_label": "etl", "job_payload": "{'table': 'users', 'columns': ['id', 'name', 'email']}" }
- Distributed Architecture: Optimized for handling scheduling in a distributed environment.
- High Performance: Leveraging Rust's performance for handling concurrent tasks efficiently and reliably.
- Scalable Design: Containerised services easily scale with your scheduling growing demands.
- Customizable: Designed to be drop-in and flexible.
- Rust >= 1.7
- Docker
- Docker ~ 24.0
- Docker Compose ~ 2.23
- Python
docker-compose uppytest- Job Type request field (auto created kafka topic) and Payload
- TTL for taken jobs in database

