3

我必须开发一个必须建立大量连接才能接收和发送小文件的服务器。问题是 C++ 的性能提升是否值得花时间开发代码,或者是否更好地使用 Python 并不时调试代码以加快速度。也许是一个有点抽象的问题,没有给出一些联系,但我真的不知道。至少 10,000 个连接/分钟以更新客户端状态。

4

2 回答 2

5

有了这么多的连接,您的服务器将受到 I/O 限制。C 和 C++ 等语言与 Python 和(例如)Ruby 等语言之间经常被引用的速度差异在于解释器和装箱开销会减慢计算速度,而不是 I/O 领域。

use 不仅可以很好地合理利用并发性(通过进程和线程,GIL 在 I/O 期间释放,因此对于 I/O 绑定的程序来说并不重要),还有大量的异步服务器。此外,Web 服务器通常具有mod_wsgi比 C 和 C++ 更好的 Python 集成(例如,对于 Apache)。这使您免于编写自己的服务器循环、套接字管理等,而这些您可能不会像主要服务器那样做。这是假设我们谈论的是 Web 服务,而不是 Apache 等无法开箱即用的更神秘的东西。

于 2012-09-29T20:15:29.163 回答
2

我预计服务器时间将由 I/O 网络、磁盘等主导。你想证明 Python 程序的 CPU 消耗是有问题的,并且你已经掌握了所有低悬的 CPU水果之前考虑改变。

于 2012-09-29T20:14:12.823 回答