Nginx——反向代理 & 负载均衡(无理论,案例实操)

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: Nginx——反向代理 & 负载均衡(无理论,案例实操)

1.开篇


有关Nginx的下载安装、相关理论内容,这里就不再多说了,详情可以参考我的这几篇文章:

https://szh-forever-young.blog.csdn.net/article/details/117992752


https://szh-forever-young.blog.csdn.net/article/details/117998893

https://szh-forever-young.blog.csdn.net/article/details/117993883

下面直接进行反向代理和负载均衡的案例实操。

2.反向代理案例一


首先启动tomcat,端口号我修改为了8082


然后转到nginx的配置文件nginx.conflisten表示监听80端口,服务器ip192.168.40.130location则表示当收到192.168.40.130发来的请求时,做一次请求转发,转发到http://127.0.0.1:8082,也就是tomcat的官网首页。

3.反向代理案例二


首先启动两台tomcat,端口号分别为80818082


分别在这两台tomcatwebapps目录下,创建一个文件,其中存放一个 a.html 的页面。


转到nginx的配置文件中,在server块中做如下配置,此时监听9001端口,服务器地址仍然是linux本机ip,下面两个location是指:当请求路径中包含tomcat1的时候将请求转发至指定的tomcat,当请求路径中包含tomcat2的时候将请求转发至另一台指定的tomcat


修改完配置文件,这里先将nginx停掉,然后再次启动测试。

4.负载均衡


因为要做负载均衡,这个和反向代理不同。负载均衡是说当nginx收到某些请求时,会将这些请求按照一定的算法(轮询、权重值、ip hash等)来将这些请求均衡的分发到不同的tomcat服务器中。

所以我们这里首先要在两台tomcatwebapps目录下创建相同的目录tomcat,在其中创建好一个简单的html页面。


转到nginx的配置文件,upstream XXX表示的是数据转发块,也就是通过server块中的proxy_pass来搭配使用,当监听的地址:192.168.40.130:8080可以省略不写)发来请求时,会根据proxy_pass定义的http://myServer做请求转发,而myServer中有两个地址分别对应两台tomcat,所以这些请求就被平摊到了这两台tomcat中。


修改完nginx.conf配置文件,我们将nginx停掉,再次重启测试。


第一次访问,nginx将该请求转发到了8082这台tomcat;刷新浏览器页面,可以看到nginx又将该请求转发到了8081这台tomcat

同样的url,多次发出请求,并不是说一直是8081、或者一直是8082,而是8081一次、8082一次,其实这里默认采用了轮询算法,可以看到nginx80818082这两台tomcat做了负载均衡。

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
10天前
|
负载均衡 网络协议 算法
一文读懂什么是Nginx?它能否实现IM的负载均衡?
Nginx(及其衍生产品)是目前被大量使用的服务端反向代理和负载均衡方案,从某种意义上来讲,Nginx几乎是低成本、高负载Web服务端代名词。 如此深入人心的Nginx,很多人也想当然的认为,在IM或消息推送等场景下是否也能使用Nginx来解决负载均衡问题? 另外,即时通讯网的论坛和QQ群里也经常有人问起,Nginx是否能支持TCP、UDP、WebSocket的负载
52 4
|
1月前
|
缓存 负载均衡 应用服务中间件
Nginx七层(应用层)反向代理:HTTP反向代理proxy_pass篇
通过使用Nginx的反向代理功能,可以有效地提高Web应用的性能、安全性和可扩展性。配置过程中需要注意不同场景下的具体需求,如负载均衡、SSL终止和缓存策略等。正确配置和优化Nginx反向代理可以显著提升系统的整体表现。
160 20
|
3月前
|
负载均衡 监控 应用服务中间件
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
225 61
|
3月前
|
安全 应用服务中间件 网络安全
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
如何测试Nginx反向代理实现SSL加密访问的配置是否正确?
227 60
|
3月前
|
安全 应用服务中间件 网络安全
配置Nginx反向代理实现SSL加密访问的步骤是什么?
我们可以成功地配置 Nginx 反向代理实现 SSL 加密访问,为用户提供更安全、可靠的网络服务。同时,在实际应用中,还需要根据具体情况进行进一步的优化和调整,以满足不同的需求。SSL 加密是网络安全的重要保障,合理配置和维护是确保系统安全稳定运行的关键。
304 60
|
2月前
|
缓存 Java 应用服务中间件
nginx的正向代理和反向代理以及tomcat
Nginx的正向代理和反向代理功能在不同的场景中具有重要作用,正向代理主要用于客户端访问控制和匿名浏览,而反向代理则用于负载均衡和高可用性服务。Tomcat作为Java Web应用服务器,与Nginx结合使用,可以显著提升Web应用的性能和稳定性。通过合理配置Nginx和Tomcat,可以构建高效、稳定和可扩展的Web服务架构。
192 11
|
2月前
|
弹性计算 负载均衡 网络协议
ECS中实现nginx4层7层负载均衡和ALB/NLB原SLB负载均衡
通过本文的介绍,希望您能深入理解并掌握如何在ECS中实现Nginx四层和七层负载均衡,以及如何使用ALB和NLB进行高效的负载均衡配置,以提高系统的性能和可靠性。
212 9
|
2月前
|
存储 应用服务中间件 nginx
nginx反向代理bucket目录配置
该配置实现通过Nginx代理访问阿里云OSS存储桶中的图片资源。当用户访问代理域名下的图片URL(如 `http://代理域名/123.png`)时,Nginx会将请求转发到指定的OSS存储桶地址,并重写路径为 `/prod/files/2024/12/12/123.png`。
101 5
|
3月前
|
缓存 负载均衡 算法
如何配置Nginx反向代理以实现负载均衡?
如何配置Nginx反向代理以实现负载均衡?
|
2月前
|
负载均衡 算法 应用服务中间件
Nginx的负载均衡
Nginx 是一款高性能的Web服务器与反向代理服务器,支持负载均衡功能,能有效提升系统性能与可靠性。其负载均衡策略包括基于轮询和权重的分配方法,以及IP哈希、最小连接数等算法,可根据实际需求灵活选择。
184 5

热门文章

最新文章