3 ms·
"Using queues also exposes you to the noisy-neighbor syndrome. If you have 25 jobs on the queue, all consisting of the same resource-intensive work, your queue
by jpitz 14y ago
"Using queues also exposes you to the noisy-neighbor syndrome. If you have 25 jobs on the queue, all consisting of the same resource-intensive work, your queue could get bogged down while less intensive processing is blocked. Queues represent a false form of parallelism and are subject to such congestion."
This isn't a failure of queueing. This is a failure to use queueing correctly. You either haven't defined the proper queues, or you are failing to use priority.
Overall, I'd say the process partition model wins best when you can take advantage of sequential access paths to your dataset. In that case, don't enqueue work items for each individual data key - enqueue a work item for a range. Queues are fundamentally an excellent mechanism for managing work items.