Многопроцессорная обработка Python имеет смысл, когда у вас есть машина с несколькими ядрами и / или процессорами.Основное различие между использованием потоков и процессов состоит в том, что процессы не разделяют адресное пространство, и поэтому один процесс не может легко получить доступ к данным другого процесса.Вот почему модуль многопроцессорной обработки предоставляет диспетчеры, очереди и тому подобное.
Проблема с многопоточностью - это Pythons Global Interpreter Lock , которая серьезно мешает многопоточным приложениям.
Асинхронный ввод-вывод полезен, когда вы долго выполняете операции ввода-вывода (чтение большого файла, ожидание ответа от сети) и не хотите, чтобы приложение блокировалось.Многие операционные системы предлагают встроенные реализации этого.
Итак, для вашего сервера вы, вероятно, будете использовать многопроцессорность или многопоточность, а для вашего клиента более подходящим является асинхронный ввод-вывод.