小编Ang*_* 84的帖子

Python可扩展聊天服务器

我刚开始用Python学习套接字.所以我写了一些聊天服务器和客户端的例子.我在互联网上看到的大部分内容似乎都使用线程模块来处理客户端与服务器的连接(异步).我确实理解,对于可伸缩服务器,你需要使用一些额外的技巧,因为成千上万的线程可以杀死服务器(如果我错了,请纠正我,但这是由于GIL吗?),但这不是我现在关注的问题.

奇怪的是,我在Python文档中找到了创建子进程的正确方法(不幸的是我丢失了引用,对不起:()来处理套接字.

所以问题是:使用线程还是多处理?还是有更好的解决方案吗?

请给我答案并向我解释不同之处.

顺便说一句:我确实知道像Twisted这样的东西写得很好.我不是在寻找预先制作的可扩展服务器,而是试图了解如何编写可以扩展的服务器或者至少可以处理10k个客户端.

编辑:操作系统是Linux.

python multiprocessing scalable

9
推荐指数
1
解决办法
2098
查看次数

标签 统计

multiprocessing ×1

python ×1

scalable ×1