Proxy Gateway基于openresty(nginx lua module)开发,可以作为接口网关(api gateway)使用,整合业务模块接口,微服务治理聚合,通过web配置界面,能够轻松进行代理配置管理,支持负载均衡,服务器状态检测等
Proxy Gateway基于openresty(nginx lua module)开发,可以作为接口网关(api gateway)使用,整合业务模块接口,微服务治理聚合,通过web配置界面,能够轻松进行代理配置管理,支持负载均衡,服务器状态检测等
Proxy Gateway基于openresty(nginx lua module)开发,可以作为接口网关(api gateway)使用,整合业务模块接口,微服务治理聚合,通过web配置界面,能够轻松进行代理配置管理,支持负载均衡,服务器状态检测,后续简称PGW。包括以下特性
安装最新版本的openresty http://openresty.org/en/installation.html
nginx.conf配置如下,如果按照默认路径(/usr/local/openresty/)安装,可以参考以下步骤
cd /usr/local/openresty/nginx
git clone https://github.com/ffay/proxygateway.git
然后把/usr/local/openresty/nginx/conf/nginx.conf 用源码中的nginx.conf替换即可
https://github.com/ffay/proxygateway/blob/master/nginx.conf
…
域(域名)管理,可以任意添加多个域名,默认域 localhost 在该域下的配置,直接访问IP生效,PGW通过域名进行配置隔离,每个域名下的配置互不干扰,需要将域名解析到PGW的IP
服务模块,每个域名下面可以添加多个服务模块,用于将接口按业务模块进行分组
后端服务器,每个服务模块下面可以配置多台后端服务器,可以为每台服务器指定权重,负载均衡时会按权重进行接口请求分发,支持http以及https代理
代理路径(uri)配置,每个服务模块下可配置多个代理uri规则,配置规则类似nginx location的配置,配置实例
| 原始请求URI | 后端服务URI | 说明 |
|---|---|---|
| / | / | 将所有对PGW某个域下的请求转发到后端服务器 |
| /u | /user | 将所有对PGW某个域下/u开头的请求重写成/user后转发到后端服务器,例如,请求 /u/1001 转发到后端服务器为 /user/1001 |
| /topic/([0-9]+)/([0-9]+) | /topic?uid=$1&tid=$2 | 支持正则匹配,请求 /topic/1001/2002 转发到后端服务器为 /topic?uid=1001&tid=2002 |
| /t%?tid=(.*) | /topic?tid=$1 | 支持正则匹配,原始请求URI中如果有 ? 出现,需要在前面加上 %,用于转义问号 |
所有接口映射配置必须以 / 开头,同一个域下面 原始请求URI 不能重复,原始请求URI 字符串越长匹配优先级越高
No open issues yet, or sync has not completed.