网站建设需要些什么软件,网站模板含数据库下载,江西网络推广seo,网站图片尺寸5. Nginx 负载均衡配置案例(附有详细截图说明) 文章目录 5. Nginx 负载均衡配置案例(附有详细截图说明)1. Nginx 负载均衡 配置实例3. 注意事项和避免的坑4. 文档: Nginx 的 upstream 配置技巧5. 最后#xff1a; 1. Nginx 负载均衡 配置实例
需求说明/图解
windows 浏览器输…5. Nginx 负载均衡配置案例(附有详细截图说明) 文章目录 5. Nginx 负载均衡配置案例(附有详细截图说明)1. Nginx 负载均衡 配置实例3. 注意事项和避免的坑4. 文档: Nginx 的 upstream 配置技巧5. 最后 1. Nginx 负载均衡 配置实例
需求说明/图解
windows 浏览器输入: http://www.rainbowseacrm.com/search/look.html 负载均衡配置-思路分析/图解 负载均衡配置规则: 负载均衡就是将负载分摊到不同的服务单元既保证服务的可用性又保证响应足够快。 Linux 下有Nginx、LVS、Haproxy 等等服务可以提供负载均衡服务Nginx 提供了如下几种分配方式(策略) 轮询**(默认)** 每个请求按时间顺序逐一分配到不同的后端服务器如果后端服务器 down 掉能自动剔 除weight(根据权重的大小比例进行负载均衡) weight 代表权,重默认为 1,权重越高被分配的客户端越多。 指定轮询几率weight 和访问比率成正比用于后端服务器性能不均的情况。 例如 upstream rsservers{
server 192.168.12.134:8080 weight1;
server 192.168.12.134:8081 weight2;
}ip_hash : 每个请求按访问 IP 的 hash 结果分配这样每个访客固定访问一个后端服务器可以解决 session 的问题。例如 upstream rsservers{
ip_hash;
server 192.168.12.134:8081;
server 192.168.12.134:8080;
}fair(第三方)按后端服务器的响应时间来分配请求响应时间短的优先分配
upstream rsservers{
server 192.168.12.134:8080;
server 192.168.12.134:8081;
fair;
} # 2. Nginx 负载均衡实现具体步骤如下修改 C:\Windows\System32\drivers\etc\hosts 配置虚拟主机名配置相关域名的映射 # Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a # symbol.
#
# For example:
#
# 102.54.94.97 rhino.acme.com # source server
# 38.25.63.10 x.acme.com # x client host# localhost name resolution is handled within DNS itself.
# 127.0.0.1 localhost
# ::1 localhost127.0.0.1 account.wondershare.com
# 配置 eureka 主机 和 ip 的映射
127.0.0.1 eureka9001.com
127.0.0.1 eureka9002.com
192.168.76.157 www.rainbowsea.com
192.168.76.159 www.rainbowseamall.com
192.168.76.160 www.rainbowseacrm.com
修改 安装目录conf\nginx.conf 配置反向代理路径映射
这里我的 nginx.conf 路径是在 /usr/local/nginx/conf 路径下。 upstream rsservers {36 server 192.168.76.160:8080;37 server 192.168.76.160:8081;38 39 }40 41 server {42 listen 80;43 server_name 192.168.76.160;44 #server_name localhost;45 #charset koi8-r;46 47 #access_log logs/host.access.log main;48 49 location / {50 root html;51 proxy_pass http://rsservers;52 index index.html index.htm;53 }54
查看 nginx.conf 是否存在配置错误
[rootlocalhost nginx]# ./sbin/nginx -t
[rootlocalhost nginx]# /usr/local/nginx/sbin/nginx -t 重启 Nginx 加载我们修改后的配置
[rootlocalhost nginx]# ./sbin/nginx -s reload[rootlocalhost nginx]# ps -aux | grep nginx在 Linux 的 Tomcat8080 创建 webapps\search\look.html 这里我先进入到 Tomcat 的 webapps 目录下创建 look.html 文件进行一个访问映射。 h1tomcat 8080 search.... /h1在 Linux 下重新安装一份 Tomcat, 并将端口修改成 8081
[rootlocalhost opt]# cp -r ./tomcat/ ./tomcat8081修改 tomcat 的 conf\server.xml , 注意要修改如下位置否则该 Tomcat 是不能正常工作。 细节说明不同版本的 tomcat 修改的端口还不一样, 小伙伴们灵活处理即可。 在 Linux 的 Tomcat8081 创建 webapps\search\look.html h1tomcat 8081 search.... /h1linux 防火墙打开 80 端口 保证外网可以访问
[rootlocalhost product]# firewall-cmd --add-port80/tcp --permanent # 防火墙开放 10000 端口[rootlocalhost product]# firewall-cmd --reload # 重启防火墙[rootlocalhost product]# firewall-cmd --list-all # 查看防火墙信息启动 Linux 下两个 Tomcat
[rootlocalhost bin]# ./startup.sh[rootlocalhost bin]# netstat -an | more打开 Linux 当中的浏览器 访问
http://localhost:8080/http://localhost:8081/ 查看启动的端口, 确保有 8080 和 8081 端口在监听(提示: 如果 tomcat 没有监听 对应端口, 说明启动失败了, 可以尝试先执行 shutdown.sh 再执行 startup.sh 解决) 测试是否可以在 Linux 下可以正常访问到两个页面
Tomcat 8080 访问/search/look.html 成功 http://localhost:8080/search/look.html Tomcat 8081 访问/search/look.html 成功 http://localhost:8081/search/look.html 启动 或者 重新加载 Nginx
[rootlocalhost nginx]# ./sbin/nginx[rootlocalhost nginx]# ps -aux | grep nginxwindows 浏览器输入(保证浏览器不是无痕上网): http://www.rainbowseacrm.com/search/look.html
http://www.rainbowseacrm.com/search/look.html 3. 注意事项和避免的坑
nginx.conf 的 upstream 不能带下划线, 否则会失败, 但是语法检测不到 带下划线报错信息如下 如果你的浏览器是无痕上网, 负载均衡可能失效, 因为 Nginx 无法采集到相关信息, 就遇到这个情况 改用其它浏览器即可(比如 chrome) 如果某 tomcat 没有监听对应端口说明启动失败了可以尝试先执行shutdown.sh再执行 startup.sh 解决
4. 文档: Nginx 的 upstream 配置技巧
基本介绍
Nginx 是一个反向代理软件大部分的网站都采用 Nginx 作为网站/平台的 服务器软件。Nginx 除了可以直接作为 web 服务器使用外更多的情况是 通过反向代理将请求转发给上游服务器。
配置上游服务器可以使用 upstream 进行设置通过 upstream 可以实现服 务的负载均衡规则可以提高服务器的高可用性。
地址https://zhuanlan.zhihu.com/p/409693332
如果停掉 1 个 Tomcat, 会怎样?如果停掉 1 个 Tomcat, 然后又恢复会怎样?如何给不同的服务分配权重 weight
5. 最后 “在这个最后的篇章中我要表达我对每一位读者的感激之情。你们的关注和回复是我创作的动力源泉我从你们身上吸取了无尽的灵感与勇气。我会将你们的鼓励留在心底继续在其他的领域奋斗。感谢你们我们总会在某个时刻再次相遇。”