as long as I don't know how to properly name this project, let's call it cppserver for now.
A lightweight multithreaded TCP server based on the reactor pattern. This project is still in progress.
- GCC 7.5
- cmake
- clang-format & clang-tidy
- WebBench (for server stress test)
- handles requests using the master-slave reactor multithreading model.
- uses a thread pool for better concurrency performance.
- priority queue-based timer (in progress).
- http request parsing & response (partially implemented)
- support asynchronous logging.
- build the server shared lib:
mkdir build
cd build
cmake ..
make -j4
- build test cases
make echo_server
make echo_single_client
make echo_multi_clients
make http_server
Tested on: Ubuntu 16.04 CentOS 7