Я работаю над написанием Python-клиента для P2P-сетей Direct Connect. По сути, он работает, подключаясь к центральному серверу и отвечая на запросы других пользователей, которые ищут файлы.
Иногда другой клиент просит нас подключиться к ним, и они могут начать скачивать с нас файл. Это прямое соединение с другим клиентом, которое не проходит через центральный сервер.
Каков наилучший способ обработки этих соединений с другими клиентами? В настоящее время я использую один Twisted реактор для подключения к серверу, но лучше ли иметь несколько реакторов, по одному на клиента, каждый из которых работает в отдельном потоке? Или было бы лучше иметь совершенно отдельный скрипт Python, который выполняет соединение с клиентом?
Если есть какое-то другое решение, о котором я не знаю, я бы с удовольствием его услышал. Я новичок в программировании с Twisted, поэтому я открыт для предложений и других ресурсов.
Спасибо!