001/Nginx高可用模式下的负载均衡与动静分离(笔记)

Nginx高可用模式下的负载均衡与动静分离

Nginxengine x是一个高性能的HTTP和反向代理服务器,具有内存少,并发能力强特点。

1、处理静态文件、索引文件以及自动索引;打开文件描述符缓冲

2、无缓存的反向代理加速,简单的负载均衡和容错

 

一、Nginx负载均衡原理

Nginx负责转发到Tomcat(注意:Nginx与Web部署在同一台服务器)。可用下图描述:

说明:

Step1:浏览器发送http请求,通过域名,找到hosts文件下对应的IP。

            注:域名工作原理(www.cang.com在网络上申请一个域名,服务器IP要和域名绑定。当访问域名时,要先将域名对应的IP解析出来,去请求服务器的IP

           当浏览器访问http://域名:80端口时,会将80端口自动打到域名对应IP。如127.0.0.1:80

 Step2:Nginx接收浏览器Http请求,对80端口进行拦截,并转发到对应的Tomcat服务器

          注:Nginx.config是Nginx的核心配置文件,tomcat服务器地址与拦截信息均配置在该文件中。

二、Nginx神秘面纱

1、负载均衡实战

2、动静分离实战

动态资源:请求后台服务器,做查询、更新、删除等操作,即与DB有交互。(do/action...)

静态资源:图片(ipg,png)css,js...等,客户端第一次请求会将静态资源缓存,下次请求从缓存中取,而不必再请求服务器。

Nginx.conf配置文件:

说明:

upstrewam web1{

      server 127.0.0.1:8080 weight=1 max_fails=2 fail_timeout=302;

          //Nginx去连接Tomcat30秒内失败超过2次(Nginx发送2次心跳),则说明Tomcat挂掉了,需要从名单中移除。

         //weight=1(权重)

      server 127.0.0.1:8081 weight=1 max_fails=2 fail_timeout=302;

}

tomcat最大连接数:300-700

若有2000并发,1Tomcat若处理500个并发,则2Tomcat不够用。需要再增加Tomcat

以上说明命中8080有三次,命中80811

以上,Nginx挂掉,则所有的Tomcat服务器全部不可用。所以。。。

1、单节点作战(需要备用Nginx)

2、无法满足高可用

三、Nginx高可用集群实战

高可用集群指当某一个节点或服务器发生故障时,另一个节点能够自动且立即向外提供服务。

高可用集群是用于单个节点发生故障时,能够自动将资源、服务进行切换,这样可以保证服务一直在线。

在这个过程中,对于客户端来说是透明的。

 Nginx高可用服务流程图

VIP:visual IP (虚拟IP)

需要在主节点与从节点配置VIP(开了一个虚拟IP)。VIP确定访问哪一个Nginx服务器。

先访问主节点,当主节点挂掉。则再根据配置的VIP访问从节点。

应用技术:

1.keepalived安装(应用最多)---目的:保证Nginx不挂掉。

   先启动keepalived软件,加载脚本,

   keepalived配置文件内容:首先监测Ngnix是否挂掉,进程是否启动。当进程为0,没有Nginx启动时,keepalived会自动将Nginx启动起来。

  将主节点的keepalived挂掉(模拟宕机):则此时Nginx存在,不影响访问Nginx。当主节点Nginx挂掉,则从节点变为Master。

2.配置解读

3.主从切换转移

4.基于主从的动静分离和负载均衡

 

 

学习网址:

http://www.365yg.com/item/6546186112119865863/

 

 

 

 

 

posted @ 2018-04-23 08:42  kaixinyufeng  阅读(369)  评论(0编辑  收藏  举报