高效的网络服务器设计实例,用C语言编写

And*_*oid 7 c linux performance multithreading network-programming

我有兴趣学习如何编写极其高效的网络服务器软件,我不介意用指针,套接字和线程弄脏手.我说的是能够处理数千个并发连接的服务器.每个客户端没有太多处理,但有一点.

您知道真正高效的网络服务器的任何代码示例吗?

可选地指向跨平台的小型,文档齐全的代码.

Lan*_*son 5

您将在Dan Kegel的The C10K问题页面上找到很多关于构建高度可扩展的网络服务器的好参考和讨论.


cme*_*erw 1

查看nginxlighttpdvarnish来了解一些流行的高性能 http 服务器。

顺便说一句,我目前正在研究将边缘触发的 epoll 与多线程(加上用户级交换上下文样式线程/纤维)相结合 - 请参阅http://svn.cmeerw.net/src/nginetd/trunk/一些正在进行的代码(尽管这是用 C++ 编写的)。