首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Twisted中实现专线客户端的正确方式?

在Twisted中实现专线客户端的正确方式?
EN

Stack Overflow用户
提问于 2009-12-07 06:10:29
回答 1查看 1.1K关注 0票数 3

我正在编写一个专线接入P2P网络的Python客户端。从本质上讲,它的工作方式是连接到中央服务器,并响应正在搜索文件的其他用户。

有时,另一个客户端会要求我们连接到他们,他们可能会开始从我们那里下载文件。这是到另一个客户端的直接连接,而不是通过中央服务器。

处理这些与其他客户端的连接的最佳方式是什么?我目前使用一个Twisted反应器来连接到服务器,但是有多个反应器,每个客户端一个,每个都运行在不同的线程中是不是更好?或者,使用一个完全独立的Python脚本来执行与客户端的连接是否更好?

如果有其他我不知道的解决方案,我很想听听。我是一个使用Twisted编程的新手,所以我对建议和其他资源持开放态度。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-07 08:31:38

在不了解协议所有细节的情况下,我仍然建议使用单个反应器--反应器具有很好的伸缩性(特别是像PollReactor这样的高级反应器),这样您就可以避免与线程相关的开销(毕竟,这就是Twisted和其他异步系统通过避免此类开销而获得基本性能提升的原因)。在实践中,Twisted中的线程主要在需要连接到函数可能阻塞的库时很有用。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1856786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档