既然有了Tomcat,为什么还要Nginx?(tomcat为什么需要jdk)

既然有了Tomcat,为什么还要Nginx?因公众号更改推送规则,请点“在看”并加“星标”第一时间获取精彩技术分享 点击关注#互联网架构师公众号,领取架构师全套资料 都在这里 0、2T架构师学习资料干货分 上一篇

如果在节点A 上看到“连接被拒绝”(端口已关闭或服务器已关闭),则表示该服务因已释放或服务器已关闭而不可用。此时nginx自动将失败的请求转发给Node B。

假设第二次向A请求仍然失败,总共失败2次。然后,Nginx 自动将节点A 从存活列表中删除60 秒,然后继续将请求2 转发到节点B 进行处理。 60 秒后,再次尝试将请求转发到节点A.重复此循环,直到节点A 恢复正常.

在此过程中,客户端无法检测到故障。这是因为这两个请求都被转发了两次到节点B 并被成功处理。客户端不知道节点A的处理失败。这就是Nginx反向代理的优点。也就是说,客户端不需要直接连接到服务器。如果服务器上的各个节点停止或释放,客户端不会受到影响。

Tomcat只是一个Java Web容器,不能做这些事情。

不用Nginx,只用Tomcat的Http请求流程

以阿里云为例,域名管理后端可以配置二级域名映射,将1个公网域名拆分为10个二级域名。

因此,只使用Tomcat,而不使用Nginx。需要1个公网域名、10个二级域名、30台服务器、30个公网IP。

当我向我的老板提到这一点时,他说:“你疯了,滚出去,或者想出一些其他的解决方案,想想它的价值,并用它来交换公共网络上的IP“吧”。 \’。

Tomcat的DNS到IP地址的映射必须在公网,成本高昂。我感觉很痛苦。如果有软件可以将一个域名映射到30个内网IP就好了。

Nginx 恰好可以实现这一点。

如果Tomcat服务发布怎么办

例如,将多个二级域名映射到不同的文件目录。

bbs.abc.com,映射为html/bbs

blog.abc.com 映射到html/blog

http{

包括mime.types;

默认类型应用程序/八位字节流;

发送文件。

keepalive_timeout 65;

服务器{

听80;

服务器名称www.abc.com;

位置/{

根html/www;

索引index.htmlindex.htm;

}

}

服务器{

听80;

服务器名称bbs.abc.com;

位置/{

根html/bbs;

索引index.htmlindex.htm;

}

}

服务器{

听80;

服务器名称blog.abc.com;

位置/{

根html/博客;

索引index.htmlindex.htm;

}

}

}

例如,将不同的二级域名或URL路径映射到不同的Tomcat集群。

定义两个Tomcat集群,分别为serverGroup1和serverGroup2。

将group1 和group1 分别反向代理路径到serverGroup1 和serverGroup2。

uploadserverGroup1{#定义负载均衡设备的IP和状态

server192.168.225.100:8080;#默认权重值为1

server192.168.225.101:8082weight=2;#值越大负载权重越高

服务器192.168.225.102:8083;

server192.168.225.103:8084backup; #如果其他非备份服务器无法正常运行,该服务器将被认领。这称为热备份。

}

uploadserverGroup2{#定义负载均衡设备的IP和状态

server192.168.225.110:8080;#默认权重值为1

server192.168.225.111:8080weight=2;#值越大负载权重越高

服务器192.168.225.112:8080;

server192.168.225.113:8080backup;#仅当其他非备份服务器无法正常运行时才请求该服务器(称为热备份)。

}

服务器{#设置虚拟主机配置

Listen80;#监听端口

server_namepicture.itdragon.com;#监控地址,多个域名以空格分隔

location/group1{#默认请求后跟“/group1”表示启用反向代理。或者你也可以使用正则表达式

roothtml;#监听地址默认网站根目录位置

proxy_passhttp://serverGroup1;#代理转发

Indexindex.htmlindex.htm;#欢迎页面

Rejected127.0.0.1;#拒绝的IP

allowed192.168.225.133;#允许的IP

}

location/group2{#默认请求,后面跟“/group2”表示要启用反向代理。或者你可以使用正则表达式

roothtml;#监听地址默认网站根目录位置

proxy_passhttp://serverGroup2;#代理转发

Indexindex.htmlindex.htm;#欢迎页面

Rejected127.0.0.1;#拒绝的IP

allowed192.168.225.133;#允许的IP

}

error_page500502503504/50x.html;#定义错误提示页面

location=/50x.html{#配置错误提示页面

根html;

}

}

学习完上述课程后,您将需要Tomcat 和Nginx。

当然,你有足够的资金,无限的资源,无限的公网IP,无限的公网服务器,无限的域名,你就不能使用Nginx,服务发布了,你的网站崩溃了,你也无动于衷。

来源:juejin.cn/post/7280088532377534505

-就这样-

如果您喜欢这篇文章,请点击右上角分享文章给您的朋友

DNS不能自动摘掉故障的IP地址吗?

1. 分享2T架构师有用的学习资料

我能手动下掉故障的IP地址吗?

2. 10000+TB资源,阿里云盘,太棒了!

3.基本涵盖了Spring所有核心知识点的概览

· 结尾·

最后关注公众号互联网架构师,后台回复:2T,即可获取我整理的Java系列面试题及答案。这是非常完整的。

如果您觉得这篇文章有帮助或启发,请扫描上面的二维码以引起我们的关注。你们的支持是我继续写作的最大动力。

一键点赞、转发、观看3次

#上面是关于当你有Tomcat时为什么还需要Nginx。相关内容来源网络仅供参考。相关信息请参见官方公告。

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92515.html

(0)
CSDN's avatarCSDN
上一篇 2024年6月27日 上午11:53
下一篇 2024年6月27日 下午12:10

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注