我正在为 Direct Connect P2P 网络编写 Python 客户端。本质上,它通过连接到中央服务器并响应正在搜索文件的其他用户来工作。
有时,另一个客户会要求我们连接到他们,他们可能会开始从我们这里下载文件。这是与其他客户端的直接连接,不通过中央服务器。
处理这些与其他客户端的连接的最佳方式是什么?我目前正在使用一个 Twisted 反应器连接到服务器,但是最好有多个反应器,每个客户端一个,每个反应器在不同的线程中运行?还是有一个完全独立的 Python 脚本来执行与客户端的连接会更好?
如果还有其他我不知道的解决方案,我很想听听。我是使用 Twisted 编程的新手,所以我愿意接受建议和其他资源。
谢谢!