2 ms·
> A broken worker that takes tasks from the queue and immediately returns an incorrect result will quickly take over a significant portion of the tasks. Except
by rollcat 9y ago
> A broken worker that takes tasks from the queue and immediately returns an incorrect result will quickly take over a significant portion of the tasks.
Except now you can use a round-robin/"dumb" LB on the frontend, fixing that exact issue (and a whole class of other problems).
Yes, a broken worker will quickly drain the queue, except once you find out and remove it, you can (hopefully) resubmit the failed jobs. It gives you a new primitive to work with - HTTP requests are 1:1 to HTTP responses, but a job's result can be updated, and the new result propagated up the chain. (Think: media transcoding / post-processing, rendering pipelines, data analysis, etc.)
> that would require totally changing the application architecture
True, usual cost/benefit assessment when dealing with technical debt, etc.