发现问题
通过对前端请求路径以及后端接口地址的对比可以发现,两者其实并不相同,也就是说前端的请求并不是直接去发送给后端的tomcat服务器的,而是前端浏览器首先去请求nginx服务器,然后再通过nginx反向代理将请求转发到后端的tomcat服务器。
提出问题
那么我们为什么不直接将请求直接发送给后端服务器,而是要通过nginx服务器来进行反向代理进行转发请求呢?
解决问题
通过查询资料,我发现了使用nginx反向代理的好处:
1. 提高访问速度:nginx是可以去做缓存,如果请求的是相同的接口地址,就不用去请求后端服务器,可以直接用nginx将缓存数据相应给前端,可以进一步提高访问速度。
2. 进行负载均衡:所谓的负载均衡,就是把大量的请求按照我们指定的方式均衡的分配给集群中的每台服务器。nginx可以将前端发过来的大量请求来分发给多个服务器。
3. 保证后端服务安全:因为正常的实际应用来说,很多的后端的服务并不会直接暴露出来,而是会部署在公司的局域网中,不是对外开放的,而我们前端请求要发送给后端就只会有nginx这一个入口,再由nginx走内网来
转发给后端的服务,所以会提高后端服务的安全。