nginx main和events模块学习

nginx配置文件主要分为六个区域:main section、events section、http section、sever section、location section、upstream section。依据这个分类学习nginx的模块。

main module:主要控制子进程的所属用户/用户组、派生子进程数、错误日志位置/级别、pid位置、子进程优先级、进程对应cpu、进程能够打开的文件描述符数目等。

user kingnet kingnet;
worker_processes 4;
error_log logs/error.log notice;
pid logs/nginx.pid;
# worker_priority -5;
# worker_cpu_affinity 0001 0010 0100 1000;
worker_rlimit_nofile 1024;

注:worker_cpu_affinity:指定进程对应cpu,上面配置是第一个进程对应cpu0,第二个进程对应cpu1,第三个进程对应cpu2,第四个进程对应cpu3,也可以指定一个进程对应多个cpu。比如0101表示进程对应cpu0/cpu2。

worker_rlimit_nofile:指定每个woker可以打开的文件描述符数目,一般和worker_connections的值是相同的。

event module:控制nginx处理连接的方式。

1234 events {
    use epoll;
    worker_connections 10240;
}

注:use:使用网络IO模型,epoll模型比select模型效率高很多。

worker_connections:每个worker能够处理的最大连接数,取决于ulimit -n的值。
nginx并发连接数:<worker_processes*worker_connections。
关于网络IO模型以后需详细学习。

相关阅读:

搭建基于Linux6.3+Nginx1.2+PHP5+MySQL5.5的Web服务器全过程

LNMP 全功能编译安装 for CentOS 6.3笔记

CentOS 6.3 安装LNMP (PHP 5.4,MyySQL5.6)

在部署LNMP的时候遇到Nginx启动失败的2个问题

Ubuntu安装Nginx php5-fpm MySQL(LNMP环境搭建)

Nginx 的详细介绍请点这里
Nginx 的下载地址请点这里

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/b57158c80e4e13c150b2534ca77fc921.html