美文网首页程序员技术栈nginx 程序员
Nginx特性-轻量级+CPU亲和+超强的静态文件处理能力

Nginx特性-轻量级+CPU亲和+超强的静态文件处理能力

作者: markfork | 来源:发表于2018-04-30 10:11 被阅读40次

章节目录

  • 轻量级
  • CPU亲和
  • 超强的静态文件处理能力

轻量级

功能模块少

源代码只保留与http 及核心功能代码,出于性能考虑,不像httpd 有那么丰富的插件。

代码模块化

易读,可进行二次改进。

CPU亲和

8核心 16核心,多核密集计算、多线程,接入层中间件
双cpu、每个cpu有四个核心
不同worker 绑定不同核心 均匀分配,多个核心自动切换的模式,会带来核心切换资源消耗。
什么是CPU亲和?

把CPU核心和NGINX 工作进程绑定的方式,把每个worker进程固定在一个cpu
上执行,减少切换cpu的cache miss,获得更好的性能。

超强的静态文件处理能力-sendfile

内核空间-用户空间数据拷贝模式

普通http server对文件、网络流的传输模式.jpeg

可以看到上图为nginx应用程序进程配合内核空间返回给用户请求静态文件的response过程
这种响应模式,需要进行 内核空间 与 应用进程 空间之间数据的拷贝,比较消耗性能。

内核空间零拷贝模式

内核空间零拷贝模式.jpeg

直接通过内核空间进行数据的拷贝,sendfile利用带了linux在2.2 零拷贝传递模式
nginx对静态文件的处理能力超强的原因就是因为sendfile使用了内核空间零拷贝数据传递模式。

相关文章

  • Nginx特性-轻量级+CPU亲和+超强的静态文件处理能力

    章节目录 轻量级 CPU亲和 超强的静态文件处理能力 轻量级 功能模块少 代码模块化 CPU亲和 8核心 16核心...

  • [Nginx]:基于Nginx的中间件架构一

    一、nginx特性 1、IO 2、轻量级 3、CPU亲和(affinity) cpu亲和:是一种把CPU核心和ng...

  • nginx性能优化

    Nginx 的系统结构 1、Nginx运行工作进程数量 2、Nginx运行CPU亲和力 3、Nginx最大打开文件...

  • Nginx 处理静态文件

    首先安装 Nginx: 安装完成之后我们用命令查看下 Nginx 的版本: 我这里用的是 1.10.3 (Ubun...

  • 初识Nginx

    使用场景 特性 IO多路复用 使用epoll模型,高并发处理客户端的请求 CPU亲和 把working进程与CPU...

  • nginx常见技巧

    nginx常见技巧 nginx的用途 一款轻量级的服务器,于前端而言,可以做静态文件服务器,很方便。于后端而言,可...

  • nginx 在前端领域的应用

    什么是nginx ? 其实就是一个轻量级的服务器,可以很好的处理反向代理和负载均衡;可以很好的处理静态资源;所以很...

  • DJango+Nginx+uWsgi实现动静分离

    由于 DJango处理静态文件不太友好; 以后有可能需要处理php或者其他资源的请求 所以考虑结合nginx,使用...

  • Nginx实现动静分离

    Nginx的静态处理能力很强,但是动态处理能力不足,因此,在企业中常用动静分离技术。动静分离技术其实是采用代理的方...

  • Nginx动静分离实操

    Nginx的静态处理能力很强,但是动态处理能力不足,因此,在企业中常用动静分离技术。动静分离技术其实是采用代理的方...

网友评论

    本文标题:Nginx特性-轻量级+CPU亲和+超强的静态文件处理能力

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