Как следует из названия, первый разделяет нагрузку на уровне потоков, второй - на уровне процессов.
У первого чуть хуже с изоляцией - падение одного потока может обвалить весь сервер.
У второго чуть хуже со скоростью запуска и потреблением ресурсов (на старых ядрах Linux (около 2.6) и даже новых Windows).
Последние ядра Linux организованы так, что процессы и потоки реализуются через один и тот же механизм ( clone() ) с практически одинаковыми затратами.
Обсуждение этого вопроса на
stackoverflowОдин из семинаров Яндекса, где этот вопрос также упомянут.
Спасибо,
Дмитрий, за конструктивное обсуждение вопроса!