服务器搭建集群后: 服务器搭建集群后,使用Nginx做反向代理服务器
思路:使用docker在linux服务器上安装,如果没有docker可参考 ↓↓↓(温馨提示:超简单)
https://blog.csdn.net/Object_de_Father/article/details/109427164
下面我们撸起袖子开始干代码:
version: '3.1' services: nginx: restart: always image: daocloud.io/library/nginx:1.13.0-alpine container_name: nginx ports: - 80:80
user nginx; worker_processes 1; //这个值的大小和并发量有关系,值越大支持并发量越大 error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024;//这个值的大小和并发量有关系,值越大支持并发量越大 } http { include /etc/nginx/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; #tcp_nopush on; keepalive_timeout 65; #gzip on; - nginx.conf 1/32 3%
version: '3.1' services: nginx: restart: always container_name: nginx ports: - 80:80 volumes: - /root/app/nginx/conf.d/:/ect/nginx/conf.d
server{ listen 80; server_name localhost; #基于反向代理访问到tomcat服务器 location / { proxy_pass http://网址:8080/; } }
# 1.精准匹配,例如www.baidu.com就能匹配到,www.baidu.com/×××就不行 location = / { # 匹配和定制规则完全相同的路径,优先级最高 } # 2.通用匹配 location /××× { # 匹配所有以/×××开头的路径 } #3.正则匹配 location ~/××× { # 匹配所有以/×××开头的路径,优先级要高于通用匹配 } #4.匹配开头路径 location ^~ /laojiang/{ # 匹配所有以laojiang开头的路径,优先级高于正则匹配 } #5.匹配指定格式路径 ~*\.(gif|jpg|png)$ { # 匹配以gif或者jpg或者png为结尾的路径 }
想要实现Nginx轮询负载均衡机制只需在文件中添加以下内容
upstream 自定义名称 { server 路径(ip:port); server 路径(ip:port); ... } server{ listen 80; server_name localhost; location / { proxy_pass http://上面upstream的名称/; } }
实现加权法的方式。在轮询法的基础之上进行
upstream 自定义名称 { server 路径(ip:port) weight 加权数;//这里就是和轮询法重要的区别 server 路径(ip:port) weight 加权数; ... }
实现ip_hash法(源hash法)的方式。在轮询法的基础之上进行
upstream 自定义名称 { ip_hash; //加在在这里哦 server 路径(ip:port); server 路径(ip:port); ... }
# 配置如下 location / { proxy_pass 路径; }
# 配置如下 location / { root 静态资源路径; index 默认访问路径下的什么资源; autoindex on; #代表以列表的形式展示静态资源下的全部内容 }