NGINX создан как-раз создан для решения таких задач. Там внутри все уже максимально оптимизировано. Он не станет прожигать 100% CPU если существуют более экономичные подходы к решению.
Похоже, вы уже уперлись в потолок производительности вашего сервера, то есть в его предел прочности перед DDoS-ом.
stayHARD: В момент когда какой-то воркер забирает из очереди последний элемент и начинает работу над этим заданием, очередь уже пустая, а все 50 воркеров трудятся над последними 50 заданиями из очереди. Когда они закончат (каждый в свое время), то сами завершатся по task_done(). Основной поток в join-е ждет их всех и продолжит выполнятся только после завершения последнего задания.
2. Надежность(стабильная работа и гарантированная доставка информации в обе стороны).
Если клиент и сервер находятся на разных машинах, то ни о какой "гарантированной доставке" говорить нельзя.
Возможно имелась ввиду атомарность отдельных транзакций?
Это нужно уточнить.