多个服务器(或者软件)呢,都可以完整的完成一个业务 eg:一个业务呢有A,B,C三个流程,服务器甲可以完成A,B,C。服务器乙也可以完成A,B,C
多个服务器 完成不同的业务流程 eg:一个业务呢有A,B,C三个流程,服务器甲完成A业务,服务器乙呢完成B业务
部署在服务器上面,转发客户机的请求,Nginx是一个反向代理 Nginx就是监听
安装在客户机上面,直接进行转发,典型的就是fqrj
第一步通过命令行先启动.net5 项目的三个实例,分别定义不同的端口号 dotnet +api的dll --urls=“http://:5005" --port=5005 dotnet +api的dll --urls="http://:5006” --port=5006 dotnet +api的dll --urls=“http://*:5007” --port=5007
开着先放在这
同时监听这三个端口号:5005,5006,5007
先去官网下载,这个自己下载 去nginx.conf做相关配置
第一步:开启Nginx start nginx 寻找nginx.conf配置文件(关于nginx都在这个里面) 把server下面的默认端口80改成90,然后以http的协议访问这个端口90 出现以下界面就说明是成功的 配置Nginx代理 关键词:proxy_pass 和upstream 在server上面定义
在server里面定义
修改配置文件之后呢 nginx -s reload 命令重新加载配置文件 接下来访问90端口(这里访问会出现404,这里把端口改成9000) Nginx会把请求呢分发到不同的服务器,这就达到了服务器的集群效果
nginx 默认是轮询转发 介绍一下几种负载均衡的策略
根据用户的访问特点,访问指定的服务器,比方说这个用户第一次访问的5005,那下次来还访问5005
把请求转发给之前连接数比较少的服务器,当其他服务器访问量大的时候呢,可以达到很好的效果
响应时间短的服务器优先分配
这个不用担心,nginx很聪明,宕机了就不访问,当服务器恢复正常的时候呢,会再次访问
Nginx还可以做缓存