Nginx的使用

一、背景
目前电商和互联网系统都会采用nginx + 应用服务器(tomcat).
Web服务器分2类:
1、 web服务器
a) Apache 服务器
b) Nginx 常用做静态内容服务和代理服务器
c) IIS
2、 web应用服务器
a) tomcat
b) resin
c) jetty
区分:web服务器不能解析jsp等页面,只能处理js、css、html等静态资源。
并发:web服务器的并发能力远高于web应用服务器。

二,简介
Nginx 是一个 高性能http和反向代理服务器,可实现负载均衡。

三、为何要使用nginx?
1、传统的Web项目中,并发量小,用户使用的少。此时,用户可以直接访问tomcat服务器,然后tomcat服务器返回消息给用户。当然,为了解决并发问题,我们会多增加几个tomcat服务器。当用户访问的时候,请求可以提交到空闲的tomcat服务器上。
但是会出现一个问题,当我们做图片上传操作时,可能会遇到这种情况,图片被上传到了tomcatA上,当我们需要请求这个图片时,tomcatA正处于繁忙状态,此时,访问请求被交给其他tomcat处理。tomcat之间数据未同步,请求的图片找不到。因此,我们选择了分布式。
单开一个图片服务器用来存储图片,保证我们做上传操作时,不管是哪个服务器接收到图片,都把图片上传到图片服务器。图片属于静态资源,同时nginx的并发能力高于tomcat,因此在图片服务器上部署一个nginx服务器。
2、当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况
3、在开发阶段,存在多个环境的访问地址是不同的情况,容易由此导致问题的产生。所以,为了避免该类问题的产生,可以使不同的环境访问地址完全一致,即通过域名访问。通过域名访问一个系统时,例如,后台系统占用80端口,其他系统就无法占用80,也就是无法通过域名直接访问,必须通过 域名:端口 访问http://www.taotao.com:8081/,将会导致,生产环境和开发环境的访问路径是不同的。通过nginx来解决

四、使用
1、安装,启动。下载nginx,解压得到。
Nginx的使用_第1张图片
在 CMD(windows+r) 中执行三个命令:
启动:start nginx.exe
停止:nginx.exe -s stop
重新加载:nginx.exe -s reload (配置文件修改之后)
查看任务管理器,只有2个进程nginx才算是真正的启动成功:
Nginx的使用_第2张图片

2、nginx.exe 配置
Nginx的使用_第3张图片
Nginx的使用_第4张图片
测试:
Nginx的使用_第5张图片
补充:
启动nginx的注意事项
1、 其他服务占用80端口,会导致nginx启动失败,检查的方法是 cmd  nginx.exe
2、 Nginx的路径不能包含中文
正向代理
用户 --> 代理 --> 浏览器
反向代理
用户 --> nginx —> tomcat
即:Tomcat根本不知道请求的来源,只知道所有的请求都是来源于Nginx,不知道真正的来源

本例中所用nginx下载地址:链接:https://pan.baidu.com/s/1ilpaOg9H9qFHDIGm_HUb2A
提取码:3c6x

你可能感兴趣的:(自学技术,nginx,tomcat)