- 入门指南
- 下载
- 编译
- 配置文件
- 启动
- Docker
入门指南
下载
生产环境的话从Download下载最新稳定版, 其他情况可以git clone。
编译
make TARGET=linux2628 USE_LUA=1 LUA_INC=/usr/include/lua5.3 USE_OPENSSL=1 USE_PCRE=1 USE_ZLIB=1
make install PREFIX=/usr/local/nuster
添加
USE_PTHREAD_PSHARED=1
使用pthread
如果不需要可以删除
USE_LUA=1 LUA_INC=/usr/include/lua5.3 USE_OPENSSL=1 USE_PCRE=1 USE_ZLIB=1
具体可以参考HAProxy README。
配置文件
准备一个配置文件: nuster.cfg
global
nuster cache on data-size 100m uri /_nuster
nuster nosql on data-size 200m
master-worker # v3
defaults
mode http
frontend fe
bind *:8080
#bind *:4433 ssl crt example.com.pem alpn h2,http/1.1
use_backend be2 if { path_beg /_kv/ }
default_backend be1
backend be1
nuster cache on
nuster rule img ttl 1d if { path_beg /img/ }
nuster rule api ttl 30s if { path /api/some/api }
server s1 127.0.0.1:8081
server s2 127.0.0.1:8082
backend be2
nuster nosql on
nuster rule r1 ttl 3600
nuster监听8080端口,接受HTTP请求。/_kv/
开头的请求分配到backend be2
, 可以发送HTTP POST/GET/DELETE
到/_kv/any_key
来 添加/取得/删除 Key/Value.其他的请求都被分配到backend be1
, 并且会被转发到服务器s1
or s2
. 其中/img/*
请求会被缓存1天,而/api/some/api
会被缓存30秒。
启动
/usr/local/nuster/sbin/nuster -f nuster.cfg
Docker
docker pull nuster/nuster
docker run -d -v /path/to/nuster.cfg:/etc/nuster/nuster.cfg:ro -p 8080:8080 nuster/nuster