Nginx简述

 底层原理---请求代理机制

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器
特点:
1. 内存少 2M, tomcat启动内存占用量200M
2. 并发能力强 3-5万次 tomcat支持 180-250,调优之后支持1000
3. Nginx可以作为web服务器使用

在这里插入图片描述

反向代理

特点:
1. 代理服务器,介于用户和服务器之间.
2. 用户从反向代理服务器,获取数据资源.
3. 用户不知道真实的服务器到底是谁,保护了服务器的信息,也称之为:服务器端代理

正向代理

特点:
1. 代理服务器 介于用户和服务器之间.
2. 用户清楚自己访问的服务器到底是谁,但是服务器不清楚是谁访问的.所以保护了用户的信息. 所处称之为: 客户端代理.
3. 使用场景: 网络通信, 路由器

下载与安装

下载地址:https://nginx.org/en/download.html

解压-->进入文件目录-->操作如下:(c语言写的,注意文件目录不要有中文空格特殊符号)

nginx命令启动

要求: 操作nginx的命令,必须在nginx的根目录中执行

  1. 启动nginx start nginx
  2. 重启nginx nginx -s reload
  3. 关闭nginx nginx -s stop

访问服务:hppt://localhost:80,出现如下界面,说明Nginx启动成功

反向代理配置

http {
	#1.每个反向代理服务 都是一个server
    server {
    	#2. 默认条件下 都会监听 80端口
        listen       80;
        #3. 拦截的域名名称
        server_name  localhost;
		#4. 拦截的策略  / 拦截全部的请求
        location / {
        	#5. root关键字 代表磁盘目录
            root   html;
            #6. index关键字 默认页面
            #index  index.html index.htm;
            index  abc.html;
        }
    }
    #配置图片服务器反向代理
	server {
		listen 80;
		server_name image.jt.com;

		location / {
			root F:/JT_SOFT/images;
		}
	}
    
#配置tomcat服务器集群 默认原则: 1.轮询策略
	upstream tomcats {
		server 127.0.0.1:8091;
		server 127.0.0.1:8092;
		server 127.0.0.1:8093;
	}
	
	server {
		listen 80;
		server_name manage.jt.com;
		
		location / {
			#代理URL请求地址
			proxy_pass	http://tomcats;
		}
	}	
 }

Nginx负载均衡

 轮询策略
说明: 根据配置文件的顺序,依次访问.

 #配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        server 127.0.0.1:8091;
        server 127.0.0.1:8092;
        server 127.0.0.1:8093;
    }

权重策略
说明: 根据性能的不同,可以改变tomcat服务器的访问量.让性能更好的服务器,接收更多的请求. 记得重启服务器.

#配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        server 127.0.0.1:8091 weight=6;
        server 127.0.0.1:8092 weight=3;
        server 127.0.0.1:8093 weight=1;
    }

IPHASH策略
需求: 要求用户和服务器进行绑定.

#配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        ip_hash;
        server 127.0.0.1:8091;
        server 127.0.0.1:8092;
        server 127.0.0.1:8093;
    }

 Nginx常用属性

down属性
说明: 如果要求nginx 不将请求发送给某个服务器,则使用down属性

#配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        #ip_hash;
        server 127.0.0.1:8091 down;
        server 127.0.0.1:8092 ;
        server 127.0.0.1:8093 ;
    }

backup 属性
说明: 可以理解为备用机, 正常情况下,该服务器不会被访问. 当其它服务器遇忙时,或者全部down掉时,该服务器才会有效!.

#配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        #ip_hash;
        server 127.0.0.1:8091 down;
        server 127.0.0.1:8092 backup;
        server 127.0.0.1:8093 down;
    }

nginx 实现tomcat高可用
说明: 当tomcat服务器意外关闭时,nginx 还没有标识down熟悉时, 则nginx 依然会将请求发送给该服务器.这时看到用户的请求一直在"转圈" 2-3秒之后,切换其它服务器 进行访问. 这样的话 用户体验不好.

如何解决: 可以为nginx配置 自检的功能. 如果发现服务器宕机,则在指定的时间内,不会再次访问故障机!!!

#配置tomcat服务器集群 默认原则: 1.轮询策略
    upstream tomcats {
        #ip_hash;
        # 如果访问服务器 失败1次之后,60s之内 不会再次访问故障机.
        server 127.0.0.1:8091 max_fails=1 fail_timeout=60s;
        server 127.0.0.1:8092 max_fails=1 fail_timeout=60s;
        server 127.0.0.1:8093 max_fails=1 fail_timeout=60s;
    }

如果买了域名解析器可以使用域名解析器:

在这里插入图片描述 本机测试可以采取如下方案:

 

 

 

 常见问题

80端口被占用,需要释放进程

在这里插入图片描述

 在这里插入图片描述

如果80端口 被PID=4占用,则需要升级驱动配置. (百度上好多答案)

在这里插入图片描述

关闭多余Nginx

1. 主进程: 主要提供反向代理服务的.
2. 守护进程: 防止主进程意外关闭的.
关闭策略: 先关闭守护进程,再关闭主进程(占用内存大的).

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值