世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程。 ——摘自周志明

Nginx原理

1、nginx采用了一个master多个worker的方式处理请求。每个worker里面只有一个主线程,并且nginx采用的是异步非阻塞方式处理请求,所以能够同时处理成千上万的请求。

2、不同worker进程之间处理并发请求时,几乎没有同步锁的限制,减少了系统开销。

3、worker的数量最好和cpu数量一样,并为每个worker绑定特定的cpu,这样进程切换的代价最小。

4、worker处理一个请求,会占用几个链接?两个或者4个,当访问nginx上的静态资源时,占用两个;如果访问tomcat的动态资源则会占用4个。

计算支持的最大并发数:woker最大连接数 * worker数量/2或者4

5、nginx采用Io多路复用技术。

  一个线程,通过记录I/O流的状态来同时管理多个I/O,可以提高服务器的吞吐能力。

posted @ 2019-01-17 11:25  白杯与咖啡  阅读(218)  评论(0编辑  收藏  举报