1.进程
处于动态执行过程中的程序。
特点:
动态、并发、独立、异步。
结构特征:
程序、数据、进程控制块。
线程区分:
线程是进程的再划分,更小更细,对系统进行调度开销小;
基本状态:
就绪、阻塞、运行三个状态
2.nginx处理请求过程
master(master进程会先建立好需要listen的socket)--------fork生成子进程workers,继承socket(此时workers子进程们都继承了父进程master的所有属性,当然也包括已经建立好的socket,当然不是同一个socket,只是每个进程的这个socket会监控在同一个ip地址与端口,这个在网络协议里面是允许的)------当一个连接进入,产生惊群现象。一般来说,当一个连接进来后,所有在accept在这个socket上面的进程,都会收到通知,而只有一个进程可以accept这个连接,其它的则accept失败。
3.nginx配置服务器进程
推荐配置一个cpu对应 一个进程
原因:
nginx是用一个主进程开启然后管理一群小的进程来处理连接,高并发是通过小进程循环处理来实现的,不需要太多进程,如果进程偏多,会导致进程相互竞争cpu资源,带来不必要的上下文切换。
apahce:多进程、线程 适用于cpu密集型,
nginx:事件驱动(本质io事件) 适用于io密集型
ps:nginx可以是多进程+事件驱动模式
例如 mysql数据计算需要cpu密集型 反向代里需要io密集型
4.nginx配置多个进程绑定cpu
worker_processes 3;//配置进程数3
worker_cpu_affinity 0010 0100 1000;//绑定相应的cpu
nginx的进程学习
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、nginx工作进程处理简单请求时的系统调用1.找到nginx的工作进程 ps aux |grep nginxi...