nginx实现高并发及原理

1.1nginx基本介绍

1.nginx高并发原理(多进程+epool实现高并发)

1.Nginx 在启动后,会有一个 master 进程和多个相互独立的 worker 进程

2.每个子进程只有一个线程,采用的 IO多路复用模型epoll,实现高并发

2.epoll能实现高并发原理

1.epoll() 中内核则维护一个链表,epoll_wait 方法可以获取到链表长度,不为0就知道文件描述符准备好了

2.在内核实现中 epoll 是根据每个 sockfd 上面的与设备驱动程序建立起来的回调函数实现的

3.某个 sockfd 上的事件发生时,与它对应的回调函数就会被调用,来把这个 sockfd 加入链表,其他处于“空闲的”状态的则不会

4.epoll上面链表中获取文件描述,这里使用内存映射(mmap)技术, 避免了复制大量文件描述符带来的开销

内存映射(mmap):内存映射文件,是由一个文件到一块内存的映射,将不必再对文件执行I/O操作

3、nginx和apache比较

(1)nginx相对于apache的优点

1.轻量级,同样起web 服务,比apache 占用更少的内存及资源

2.抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能

3.高度模块化的设计,编写模块相对简单,社区活跃,各种高性能模块出品迅速啊

(1)apache相对于nginx的优点

1.apache 更为成熟,少 bug ,稳定性好

2.rewrite ,比nginx 的rewrite 强大

3.模块超多,基本想到的都可以找到

转载于:https://www.cnblogs.com/junjun511/p/11299357.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nginx实现高并发的主要原因是其采用了模块化、事件驱动、异步、单线程及非阻塞的架构,并大量采用了多路复用及事件通知机制。Nginx的架构设计使得它能够高效地处理并发连接和请求。具体来说,Nginx采用了以下几种方式来实现高并发: 1. 模块化设计:Nginx采用高度模块化的设计,将服务器分解为多个功能模块,每个模块只负责自身的功能,严格遵循“高内聚,低耦合”的原则。这种设计使得Nginx能够灵活地扩展和定制功能,同时也提高了并发处理的效率。\[2\] 2. 事件驱动和异步处理:Nginx使用事件驱动的机制来处理连接请求,每个连接请求由少数几个仅包含一个线程的进程worker以高效的回环机制进行处理。这种异步处理方式使得Nginx能够同时处理数千个并发连接和请求,提高了并发处理的能力。\[1\] 3. 多路复用和事件通知机制:Nginx采用了多路复用和事件通知机制,通过少量的线程和进程来处理大量的并发连接和请求。多路复用技术可以同时监控多个连接的状态,当有事件发生时,通过事件通知机制将事件传递给相应的处理程序,从而实现高效的并发处理。\[1\] 总结起来,Nginx实现高并发的关键在于其模块化、事件驱动、异步、单线程及非阻塞的架构设计,以及多路复用和事件通知机制的应用。这些特点使得Nginx能够高效地处理大量的并发连接和请求,提供稳定性和高性能的服务。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* *2* [Nginx高并发实现原理学习](https://blog.csdn.net/qq_45808700/article/details/128710270)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [面试题:Nginx 是如何实现高并发?常见的优化手段有哪些?](https://blog.csdn.net/weixin_33826268/article/details/91399333)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值