1.nginx unit 特性
1. 动态:基于HTTP的RESTful JSON API的配置热加载
2. 语言:支持主流语言:Java, Python, PHP, Perl, Ruby, Go, NodeJS
3. 性能:高性能,高并发,低内存
4. 安全:支持命名空间,进程隔离和TLS
2.nginx unit进程说明
1. main进程:即主进程,负责管理各进程和通讯
2. controller进程:处理更改配置的请求,处理完转发给router进程
3. router进程:多线程方式处理http业务请求
4. application进程:应用进程,运行和处理各语言的业务
进程之间用共享内存且无锁的方式,做到极致的性能和低延迟。
3.nginx unit 部署
参考 官方文档
4.nginx unit 启动
unitd --control ip:port
port:指定api 端口
验证 api 是否成功命令: curl ip:port
5.代理json 配置示例
{ "listeners": {
"*:8300": { # 监听端口
"pass": "routes" #匹配路由
}
},
"routes": [
{
"match": {
"uri": "/redis/test/*" #访问路径
},
"action": {
"proxy": "url" #后端服务 url
}
}
]
}
6. 推送配置
添加配置
curl -X PUT -d@config.json 'ip:port/config'
验证配置
curl ip:port
删除配置
curl -X DELETE -d@config.json 'ip:port/config'