编译f-stack并安装到自定义目录
cd /data/f-stack/dpdk
mkdir bin #创建一个安装目录
meson -Denable_kmods=true --prefix=/data/f-stack/dpdk/bin/ build
cd build
ninja install
# kmods主要是编译kni,但是真正运行的时候kni不一定需要打开;
pkg-config可以直接用yum或者apt安装,不用源码安装
配置f-stack编译环境
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/data/f-stack/dpdk/bin/lib/x86_64-linux-gnu/pkgconfig/
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/data/f-stack/dpdk/bin/lib/x86_64-linux-gnu/
export FF_PATH=/data/f-stack
编译f-stack
cd /data/f-stack/lib/
make # On Linux
make install
编译nginx
cd app/nginx-1.16.1
bash ./configure --prefix=/usr/local/nginx_fstack --with-ff_module
make
make install
cd ../..
/usr/local/nginx_fstack/sbin/nginx
给dpdk端口配置ip
cd /data/f-stack/tools/
make
cd sbin
./ifconfig f-stack-0 192.168.200.103
在另一台主机ping这个ip检查连通性,然后用apache ab(apt安装)测试f-stack的rps
ab -n 10000 -c 1000 http://192.168.200.103/index.html
单核f-stack-nginx和nginx的rps对比,f-stack小请求RPS优势明显,大请求很弱,可以加核试试
FileSize f-stack-nginx nginx 100MB 10.70 28.30 5B 42863.27 31763.17