Network Message Framework For Linux C++.
cpp-version: C++20
os: linux
protocol: http
tcp stream(protobuf)
websocket
tls/ssl: openssl
script: lua
docker run --privileged -p 20023:20023 -v ${LOCAL_HTTP_DIR_PATH}:/avant_static gaowanlu/avant:latest
If there are already dependencies to be installed on the host, please selectively ignore them.
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
sudo mkdir /avant_static
vim bin/config/main.ini
cd bin
./avant
ps -ef | grep avant
ps -ef | grep avant
kill PID
The main thread, other thread, and each worker thread have their own independent Lua virtual machine. config/Init.lua
Using signal SIGUSR1(10), Avant provides Lua hot updates without restarting the process.
ps -ef | grep avant
kill -10 PID
support tcp keep-alive stream (protobuf) and http app (http-parser)、websocket
CPU: Intel(R) Core(TM) 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/
1、@nodejs/http-parser 2、@lua/lua
3、@protocolbuffers/protobuf 4、@openssl/openssl
5、@madler/zlib 6、@homer6/url