美文网首页
19年第42周:Ngnix-多进程和Apache的比较

19年第42周:Ngnix-多进程和Apache的比较

作者: 习惯研究所所长 | 来源:发表于2019-10-15 10:34 被阅读0次

一、简介

NOTE:Nginx 通过异步非阻塞的事件处理机制实现高并发。Apache 每个请求独占一个线程,非常消耗系统资源。
NOTE:事件驱动适合于IO密集型服务(Nginx),多进程或线程适合于CPU密集型服务(Apache),所以Nginx适合做反向代理,而非web服务器使用。

Nginx基本架构模型

NOTE: 接口设计, 所有的模块都遵循着同样的ngx_module_t接口设计规范


image.png

Nginx核心进程模型

NOTE: Nginx适合处理IO密集型服务,作为反向代理服务器,更多的是请求调度。


进程模型

二、Nginx与Apache对于高并发处理上的区别

Apache

对于Apache,每个请求都会独占一个工作线程,当并发数到达几千时,就同时有几千的线程在处理请求了。这对于操作系统来说,占用的内存非常大,线程的上下文切换带来的cpu开销也很大,性能就难以上去,同时这些开销是完全没有意义的。

Nginx

对于Nginx来讲,一个进程只有一个主线程,通过异步非阻塞的事件处理机制,实现了循环处理多个准备好的事件,从而实现轻量级和高并发。

三、参考

相关文章

  • 19年第42周:Ngnix-多进程和Apache的比较

    一、简介 NOTE:Nginx 通过异步非阻塞的事件处理机制实现高并发。Apache 每个请求独占一个线程,非常消...

  • PHP小知识点

    Apache 和 Nginx比较 Apache: rewrite 强大,模板多, bug少, 稳定性强 Nginx...

  • 那些常用的基础的Linux命令

    进程 ps -aux | grep apache //查找apache 进程ps -ef | grep apa...

  • Nginx和Apache比较

    为什么Nginx总体性能比Apache要高: Nginx使用的是最新的epoll(linux内核2.6)和kque...

  • APR分析-进程篇

    APR分析-进程篇 Apache Server的进程调度一直为人所称道,Apache 2.0推出的APR对进程进行...

  • apache工作模式

    apache有三种工作模式: 1.prefork: 是一种进程、与派生的工作模式,用的是进程去处理请求,所以比较容...

  • linux多进程与多线程

    linux多进程与多线程。 一,线程与进程的对应关系 先回答一个大家比较关心的问题,就是线程和进程的对应关系。 第...

  • 高并发

    node.js应用高并发高性能的核心关键本质是什么? Nginx 与 多进程模式 Apache 的比较:对于Apa...

  • 阻塞与非阻塞IO

    单进程 在基础架构上,Node.js采用一个长期运行的进程,与Apache不同,Apache会产生多个线程(每个请...

  • Linux获取进程号码,和杀死进程

    显示所有进程:ps aux 显示对应进程:ps aux|grep apache 杀死进程:kill -9 1433...

网友评论

      本文标题:19年第42周:Ngnix-多进程和Apache的比较

      本文链接:https://www.haomeiwen.com/subject/sbedmctx.html