Yet another fast and efficient HTTP server.
The purpose of Zaver is to help developers understand how to write a high performance server based on epoll. Although Nginx is a good learning example, its complexity and huge code base make people discouraged. Zaver uses as few codes as possible to demonstrate the core structure of high performance server like Nginx. Developers can lay a solid foundation by learning Zaver for further study in network programming.
- epoll
- non-blocking I/O
- thread-pool
make
./objs/zaver -c zaver.conf
- HTTP persistent connection
- browser cache
add command line parameteradd conf file- sendfile
- proxy
- other HTTP/1.1 features
- memory pool
- timer(e.g. close socket when timeout)