Workerless
Extracto
The missing piece in serverless Laravel
Contenido
sqs @ lambda :$ ~

=> Queue workers for serverless Laravel applications
sqs @ lambda :$ about
Because monoliths weren't considered when AWS designed the SQS-Lambda integration, it lacks some crucial features. In a monolith, the same codebase processes various jobs from various queues. Controling prioritization & concurrency is crucial.
Workerless fixes this by allowing you to configure queue prioritization in two ways:
=> Sorted Lists [high,medium]: Processes jobs from `medium` only if `high` is empty.
=> Weighted Lists [payments:2,mail:1]: Processes jobs from `payments` ~66% of the time, and from `mail` ~33%.
sqs @ lambda :$ how
Workerless runs as a standalone binary with zero dependencies. It monitors your queues & invokes the Vapor function. You can run it on ECS Fargate (serverless) and forget about it.
sqs @ lambda :$ roadmap
Workerless is currently WIP. The roadmap includes:
=> Monitoring duration & throughput per job & queue.
=> Auto balancing on sudden bursts.
=> Backing off when a queue is empty to reduce cost.
=> Throttling on a per-queue basis.
=> Handle expired jobs without invoking the lambda to reduce costs.
=> Long polling when the queue is empty.
=> Per-queue "retry_after".
=> What else?
Let me know.
sqs @ lambda :$ whoareyou
My name is Mohamed Said @themsaid. I'm a former core team member at Laravel. I helped build & maintain Vapor & Horizon.
sqs @ lambda :$ notify
CLICK ME