您的位置 首页 > 腾讯云社区

Nginx和Apache的区别---北溟有鱼QAQ

Apache和Nginx都可以作为web服务器,有什么区别市场占有率

1、首先看下截止今天的市场份额(nginx和apache依旧是最主流的服务器)

web服务器使用统计

2、2019年五月份到2020年五月份的市场份额变化(由此可以看出apache的市场份额占有率在降低,nginx在上升)

nginx和apache的市场占有率变化地址

Apache如何接收/处理请求/返回响应?

1、Apache处理客户端请求的两种模式: prefork MPM(预启动多进程模式) + worker MPM(工作多进程模式) 2、httpd.conf配置文件中的主要指令(如图)

2.1、prefork预启动多进程模式

a. 预先启动多个httpd子进程

b. httpd子进程处理客户端请求, 直到请求处理完毕, 才处于空闲状态, 接收其他客户端请求

c. httpd子进程 《===》 客户端请求

2.2、worker多进程多线程模式

a. 启动少量子进程(配置文件设置4个)

b. 每个子进程启动多个线程(配置文件设置25个)

c. httpd线程接收请求, 直到请求处理完毕, 才处于空闲状态, 接收其他客户端请求

d. http线程 《===》 客户端请求

Nginx如何接收/处理请求/返回响应?

1、Nginx处理客户端请求: 每个进程采用异步非阻塞方式, 每个进程可以处理多个客户端请求

结论:Apache无论采用哪种模式,处理客户端的请求都是同步阻塞的机制(并发量不高,要求稳定的网站可以使用Apache,并且Apache的模块较多),而Nginx处理客户端的请求每个进程都是异步非阻塞的机制,每个进程可以处理多个客户端(用户量大,并发量高建议使用Nginx,Nginx使用比较简单) ---来自腾讯云社区的---北溟有鱼QAQ

关于作者: 瞎采新闻

这里可以显示个人介绍!这里可以显示个人介绍!

热门文章

留言与评论(共有 0 条评论)
   
验证码: