0
点赞
收藏
分享

微信扫一扫

java基础-day69-Nginx02

云上笔记 2021-09-29 阅读 69
基础知识

五、Nginx负载均衡【重点


5.1 轮询

upstream 名字 {
  server ip:port;
  server ip:port;
  ...
}
server {
  listen 80;
  listen  [::]:80;
  server_name localhost;
  
  location / {
    proxy_pass http://upstream的名字/;
  }
}
upstream my-server {
  server 39.98.132.196:8080;
  server 39.98.132.196:8081;
}
server {
  listen 80;
  listen  [::]:80;
  server_name localhost;
  
  location / {
    proxy_pass http://my-server/;
  }
}
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz opt]# ls
containerd  docker_mysql_tomcat  docker_nginx  docker_ssm  yangl
[root@iz8vbdmrir2n6xqzrbd93hz opt]# cd docker_ssm/
[root@iz8vbdmrir2n6xqzrbd93hz docker_ssm]# ls
docker-compose  Dockerfile  video-web.war
[root@iz8vbdmrir2n6xqzrbd93hz docker_ssm]# cd docker-compose/
[root@iz8vbdmrir2n6xqzrbd93hz docker-compose]# ls
docker-compose.yml
[root@iz8vbdmrir2n6xqzrbd93hz docker-compose]# docker-compose-Linux-x86_64 up -d
Starting video-ssm ... done
[root@iz8vbdmrir2n6xqzrbd93hz docker-compose]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz docker_ssm]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz opt]# cd docker_nginx/
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# ls
conf.d  docker-compose.yml
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# cd conf.d/
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# ls
default.conf
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# vim default.conf 
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# ls
conf.d  docker-compose.yml
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# docker-compose-Linux-x86_64 restart
Restarting nginx ... done

5.2 权重

upstream 名字 {
  server ip:port weight=权重比例;
  server ip:port weight=权重比例;
  ...
}
server {
  listen 80;
  server_name localhost;
  
  location / {
    proxy_pass http://upstream的名字/;
  }
}
upstream my-server {
  server 39.98.132.196:8080 weight=5;
  server 39.98.132.196:8081 weight=1;
}
server {
  listen 80;
  listen  [::]:80;
  server_name localhost;
  
  location / {
    proxy_pass http://my-server/;
  }
}
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# cd conf.d/
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# vim default.conf 
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# docker-compose-Linux-x86_64 restart
Restarting nginx ... done

5.3 ip_hash

upstream 名字 {
  ip_hash; # 配置ip_hash
  server ip:port;
  server ip:port;
  ...
}
server {
  listen 80;
  server_name localhost;
  
  location / {
    proxy_pass http://upstream的名字/;
  }
}

六、Nginx动静分离【重点


6.1 动态资源代理

# 配置如下
location / {
  proxy_pass 路径;
}

6.2 静态资源代理

# 配置如下
location / {
  root 静态资源路径;
  index 默认访问路径下的什么资源;
  autoindex on; # 代表展示静态资源全的全部内容,以列表的形式展开。
}

# 先修改docker,添加一个数据卷,映射到Nginx服务器的一个目录
# 添加了index.html和1.jpg静态资源
# 修改配置文件
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# ls
conf.d  docker-compose.yml
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# vim docker-compose.yml 
version: '3.1'
services:
  nginx:
    restart: always
    image: daocloud.io/library/nginx:latest
    container_name: nginx
    ports:
      - 80:80
    volumes:
      - /opt/docker_nginx/conf.d/:/etc/nginx/conf.d
      - /opt/docker_nginx/img/:/data/img
      - /opt/docker_nginx/html/:/data/html
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# docker-compose-Linux-x86_64 down
Stopping nginx ... done
Removing nginx ... done
Removing network docker_nginx_default
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# docker-compose-Linux-x86_64 up -d
Creating network "docker_nginx_default" with the default driver
Creating nginx ... done
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# ls
conf.d  docker-compose.yml  html  img
upstream my-server {
  server 39.98.132.196:8080 weight=5;
  server 39.98.132.196:8081 weight=1;
}
server {
  listen 80;
  listen  [::]:80;
  server_name localhost;

  # 代理到html的静态资源
  location /html {
    root /data;   #由于location后面写的是/html,所以root后的路径就不用写成/data/html,/html会默认放在/data后面
    index student.html;
  }

  # 代理到img的静态资源
  location /img {
    root /data;
    autoindex on;
  }
}
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# cd conf.d/
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# ls
default.conf
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# vim default.conf 
[root@iz8vbdmrir2n6xqzrbd93hz conf.d]# cd ..
[root@iz8vbdmrir2n6xqzrbd93hz docker_nginx]# docker-compose-Linux-x86_64 restart
Restarting nginx ... done

七、Nginx集群


Nginx集群

举报

相关推荐

Java基础Day02

day02-Java基础语法

Java语言基础day02

day02 - Java基础语法

java基础-day68-Nginx

java基础-day56-SpringMVC-02

java基础-day65-Redis02

0 条评论