SO_REUSEPORT
Опция сокета, позволяющая нескольким процессам привязаться к одному и тому же порту; входящие соединения затем распределяет само ядро.
Традиционно многоядерный сервер работал так: либо один процесс принимает соединения и передаёт сокет рабочим, либо все наследуют один слушающий сокет и конкурируют за вызов accept(). Оба варианта чего-то стоят: в первом цикл родителя становится узким местом, во втором получаются либо «громовое стадо», либо блокировка на каждое соединение. Опция появилась в Linux 3.9 в 2013 году и переносит распределение в ядро, которое хеширует четвёрку соединения и отдаёт его в одну из очередей. Nginx предоставляет её как reuseport. Подвох: завершающийся процесс уносит с собой соединения, уже лежавшие в его очереди accept.