• 入门指南
    • 下载
    • 编译
    • 配置文件
    • 启动
    • Docker

    入门指南

    下载

    生产环境的话从Download下载最新稳定版, 其他情况可以git clone。

    编译

    1. make TARGET=linux2628 USE_LUA=1 LUA_INC=/usr/include/lua5.3 USE_OPENSSL=1 USE_PCRE=1 USE_ZLIB=1
    2. 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

    1. global
    2. nuster cache on data-size 100m uri /_nuster
    3. nuster nosql on data-size 200m
    4. master-worker # v3
    5. defaults
    6. mode http
    7. frontend fe
    8. bind *:8080
    9. #bind *:4433 ssl crt example.com.pem alpn h2,http/1.1
    10. use_backend be2 if { path_beg /_kv/ }
    11. default_backend be1
    12. backend be1
    13. nuster cache on
    14. nuster rule img ttl 1d if { path_beg /img/ }
    15. nuster rule api ttl 30s if { path /api/some/api }
    16. server s1 127.0.0.1:8081
    17. server s2 127.0.0.1:8082
    18. backend be2
    19. nuster nosql on
    20. 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

    1. docker pull nuster/nuster
    2. docker run -d -v /path/to/nuster.cfg:/etc/nuster/nuster.cfg:ro -p 8080:8080 nuster/nuster