开源地址: https://github.com/mfavant/avant
Github:https://github.com/mfavant/avant
诚招有兴趣的小伙伴加入开发维护
Avant
Network Message Framework For Linux C++.
cpp-min: C++17
os: linux
protocol: http
tcp stream(protobuf)
websocket
tls/ssl: openssl
script: lua
Get Start
If there are already dependencies to be installed on the host, please selectively ignore them.
Ubuntu (Docker)
$ docker run -it ubuntu
$ sudo apt-get update
$ sudo apt-get install apt-utils -y
$ sudo apt-get install cmake g++ make git -y
$ sudo apt-get install protobuf-compiler libprotobuf-dev -y
$ sudo apt-get install libssl-dev -y
$ git clone https://github.com/crust-hub/avant.git
$ cd avant
$ cd protocol
$ make
$ cd ..
$ cmake .
$ make -j4
CentOS8 (Docker)
Config File
$ sudo mkdir /avant_static
$ vim bin/config/main.ini
Avant Start
$ cd bin
$ ./avant
$ ps -ef | grep avant
Avant Safe Stop
$ ps -ef | grep avant
$ kill PID
Example
$ docker run -it --privileged -p 20023:20023 -v ${LOCAL_HTTP_DIR_PATH}:/avant_static gaowanlu/avant:latest bash
$ cd ./bin
$ ./avant
APP Example
support tcp keep-alive stream (protobuf) and http app (http-parser)、websocket
QPS
CPU: Intel® Core™ i5-9600KF CPU @ 3.70 GHz
OS : WSL2 Ubuntu Mem 8GB (Windows 11)
config/main.ini
worker_cnt:8
max_client_cnt:10000
accept_per_tick: 100
wrk testing, avant http
# avant
$ wrk -c {{connection_num}} -t {{threads}} http://IP:20023/
$ wrk -c {{connection_num}} -t {{threads}} -d60s --header "Connection: keep-alive" http://127.0.0.1:20023/
Third-Party
1、@http-parser 2、@lua
3、@protobuffer 4、@openssl
5、@zlib