导航栏

nginx学习6之负载均衡

@

1.什么是负载均衡

  • 增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负载均衡
  • 将负载分摊到不同的服务单元,既保证服务的可用性,又保证响应足够快,给用户很好的体验。
    ![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201107233025455.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNDE2MjU0,size_16,color_FFFFFF,t_70#pic_center)

2.实现效果

  • 浏览器地址栏输入地址: http://192.168.17.129/edu/a.html ,为了达到负载均衡效果,将指令平均到8080和8081端口中(也就是输入一个地址,既可以到8080端口又可以到8081端口,让他平均分配到不同的tomcat中去

3.准备工作

  • 准备两台tomcat服务器,一台8080,一台8081
  • 在两台tomcat里面webapps目录中,创建名称是edu文件夹,在edu文件夹中创建页面a.html,用于测试

4.在niginx的配置文件中进行基本的负载均衡的配置

4.1加上负载均衡的服务列表

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201108153304220.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNDE2MjU0,size_16,color_FFFFFF,t_70#pic_center)

4,2在server中的location添加刚才设置的负载均衡代理

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201108153742893.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNDE2MjU0,size_16,color_FFFFFF,t_70#pic_center)

4.3nginx提供的几种负载均衡分配方式(策略)

  1. 轮询(默认策略)
    每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉(被停止了),能自动剔除

  2. weight
    weight 代表权重, 默认为1,权重越高被分配的客户端越多
    指定轮询问几率,weight和访问比率成正比,用于后端服务器性能不均的情况。例如在这里插入图片描述

  3. ip_hash
    每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器可以解决session的问题例如
    在这里插入图片描述
    解释:只要当前ip地址第一次访问的是这个服务器,那么以后每次这个IP地址访问都会被分配到这个服务器

  4. fair (第三方)
    按后端服务器的响应时间来分配请求,响应时间短的优先分配
    ![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201108181554713.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNDE2MjU0,size_16,color_FFFFFF,t_70#pic_center)

posted @ 2020-11-13 09:35  RickZ  阅读(119)  评论(0)    收藏  举报