前言
用户请求的转发是接口服务在部署时必须要做的一步。
请求转发的步骤大约分为如下几步:
- 域名解析到转发服务器
- 转发服务器会根据权重(weight)、备用(backup)配置转发到统一网关
- 如果统一网关存在灰度的配置,需要根据身份或者头信息过滤请求
- 转发到具体的业务服务
目前市面上优秀的请求转发有很多种,比如:Nginx、F5、Kong、Tengine等,其中Tengine是阿里巴巴基于Nginx进行封装,我们本章的内容基于Nginx进行讲解,我们先来准备下nginx的测试环境。
准备环境
如果你的测试环境没有安装Nginx,下面我通过两种方式来说下具体的安装过程。
使用Brew安装Nginx
如果你是OSX系统,可以直接使用brew管理工具进行安装,这种方式比较简单,自动从远程服务器下载最新稳定的版本进行解压、配置环境等。
# 安装nginx➜ ~ brew install nginx
静静等待~
安装完成后,我们先来修改下端口号(brew安装包把默认的监听端口号改为了8080,一般在使用解压的方式安装时监听端口都是80)。
我们需要先找到nginx.conf这个文件的位置:
➜ ~ sudo find / -name nginx.conf /usr/local/etc/nginx/nginx.conf
找到文件后,我们通过sudo vi /usr/local/etc/nginx/nginx.conf命令来修改默认的端口号,位置如下:
server { listen 80; server_name localhost; #...}
修改后保存退出。
最后不要忘记重启Nginx服务。
➜ ~ brew services restart nginx
解压包方式
首先去ngi