Nginx三大核心功能和高可用

是什么?

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)
代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实
上nginx的并发能力在同类型的网页服务器中表现较好。

Nginx三大核心功能

1.反向代理
  2.负载均衡
   3.动静分离

Nginx反向代理

        正向代理: 意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。

         反向代理: 服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。

        测试Nginx反向代理

 (1)准备一个打包好的jar包

(2)修改Nginx的配置文件代理

(3) 客户访问nginx--哪些真实服务器的资源  

扫描二维码关注公众号,回复: 15670286 查看本文章

负载均衡

        上面的反向代理中,我们通过proxy_pass来指定Tomcat的地址,很显然我们只能指定一台Tomcat地址,那么我们如果想指定多台来达到负载均衡呢?

第一,通过upstream来定义一组Tomcat,并指定负载策略(IPHASH、加权论调、最少连接),健康检查策略(Nginx可以监控这一组Tomcat的状态)等。

第二,将proxy_pass替换成upstream指定的值即可。

动静分离

 我们可以在Nginx下把静态资源、日志文件归属到不同域名下(也即是目录),这样方便管理维护。

Nginx动静分离,简单来说,就是动态请求和静态请求分开,也可以理解成使用Nginx处理静态页面,Tomcat 处理动态页面,为了加快网站的解析速度,可以把动态页面和静态页面交给不同的服务器来解析,来加快解析速度,提高请求的访问效率,降低原来单个服务器的压力,下面是动静分离的原理图。

 (1)项目启动---linux

 (2) 配置nginx----配置文件

 (3)在nginx安装目录下放置static目录以及内容

 在通过nginx访问 ---就可以显示静态资源了

nginx的高可用

Keepalived+Nginx实现高可用

        Keepalived是一个高可用解决方案,主要是用来防止服务器单点发生故障,可以通过和Nginx配合来实现Web服务的高可用。(其实,Keepalived不仅仅可以和Nginx配合,还可以和很多其他服务配合)

第一:请求不要直接打到Nginx上,应该先通过Keepalived(这就是所谓虚拟IP,VIP)

第二:Keepalived应该能监控Nginx的生命状态(提供一个用户自定义的脚本,定期检查Nginx进程状态,进行权重变化,,从而实现Nginx故障切换)

实现

yum install -y keepalived #安装keepalived 

 默认安装路径: /etc/keepalived

修改keepalived.conf的配置内容

创建nginx检测脚本  

 两台虚拟机都开启nginx和keepalived

 测试

 

猜你喜欢

转载自blog.csdn.net/wnfkbh/article/details/130307783
今日推荐