Nginx学习笔记(四)

Nginx使用epoll运行事件驱动框架


        Nginx请求切换:

       传统请求切换的缺点:不做连接切换,以来OS的进程调度实现并发;每做一次切换,都要消耗一定时间(≈5ms),随着并发进程数量的增加,进程间的消耗是指数增加的;因此比较适用于少量进程的情景;

       Nginx请求切换用户态直接完成连接切换,尽量减少OS进程切换;

同步、异步、阻塞、非阻塞概念:


  • 同步:指进程调用接口时,需要等待接口处理完数据,进程才能继续执行。
  • 异步:指进程调用接口后,不必等待数据准备完成,进程可以继续执行。后续数据准备好通过一定的方式获得,例如回调。服务器也必须支持异步操作,否则无法返回数据。
  • 阻塞:指的是进程调用接口后,如果接口没有准备好数据,那么这个进程会被挂起,直到有数据返回时唤醒。
  • 非阻塞:就是进程调用接口后,如果接口没有准备好数据,进程也能处理后续的操作。但是需要不断的去轮询检查数据是否已经处理完成。

同步异步针对的是,如果接收不到数据,当前代码逻辑的状态。
阻塞非阻塞针对的是,如果接收不到数据,当前进程的状态。

Nginx模块是什么:

  1. 如何知道第三方模块确实载入了nginx,在conf执行完成后,在/objs目录下的ngx_modules.c中,有一个数组ngx_modules[]包含所有编译进nginx的模块;
  2. 如何知道一个模块的指令?进入源码/src对应的模块源码中,有一个ngx_command_t的结构体(每一个模块都有,包括第三方模块)

Nginx模块分类:

        对于新的模块,我们首先需要知道它属于哪一类模块,对于相同类的模块可能有共通的特性有助于我们理解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值