1、Nginx高可用版原理
nginx采用主从架构,客户端发送请求给master,然后由master下发任务到worker实现。
2、nginx任务分配机制(worker工作机制)
nginx中master和woker进程之间使用的不是一种轮询的方式而是争抢机制,由于worker不支持java语言,如果遇到java程序执行的任务需要worker配置反向代理到tomcat完成客户端的需求。
优点:
1.可以使用nginx -s reload热部署,利用nginx进行热部署操作
2.每个worker都是独立的进程,如果有其中一个worker出现问题,其他worker独立的继续进行争抢,实现请求过程,不会造成服务中断。
3、worker个数设置
worker 数和服务器的 cpu 数相等是最为适宜的。
4、连接worker_connection
客户端发送请求,占用了worker的几个连接数?
2或者4个
详解:普通请求就是请求一个静态资源,过程就是从worker争抢到请求,拿到资源返回,一来一去就是两个连接
而反向代理,请求进来后,worker争抢到,需要访问数据库,请求转发到tomcat,tomcat返回数据,worker拿到数据,返回给client。来回就4个连接
nginx 有一个 master,有四个 woker,每个 woker 支持最大的连接数 1024,支持的 最大并发数是多少?
静态资源:worker数每个worker支持的最大连接数/2
动态资源:worker数每个worker支持的最大连接数/4