什么是cpu亲和

首先进程是由cpu去计算执行的,系统上所有的进程的执行都是cpu上进行的

可以试想一下,

  • 情况1:有8个进程,由一个cpu去运行

  • 情况2:同样有8个进程,由8个cpu去运行

是不是情况2会更快

cpu亲和就可以理解为如何去把nginx的工作进程分配给cpu去运行。

因此,你要配置nginx的工作进程数与绑定关系。

怎么配置

  1. 首先知道一下你的电脑有多少核CPU?

运行一下下面这个命令

lscpu | fgrep NUMA
NUMA node(s):          2
NUMA node0 CPU(s):     0-9,20-29
NUMA node1 CPU(s):     10-19,30-39

这是什么意思?

  • 就是告诉你这台服务器有两个CPU插槽

  • 其中1个插槽(NUMA node0)上分布的CPU编号是0-9和20-29

  • 另1个插槽(NUMA node1)上的是10-19,30-39

知道这个有什么用?

  • 这里有很个知识点,什是NUMA,不展开讲,可自行去了解。这里帮你概括一下就是NUMA node0中的CPU访问的一块内存(我们先记做内存1),NUMA node2中的CPU访问的是另一块内存(我们记做内存2)

  • 说得再直白点就是cpu0和cpu9访问的都是内存1,如果cpu0想访问内存2中的数据,那么就要在两个CPU之间建立QPI,通过QPI这个通道进行数据传输

  • 那么,假如,如果所有的nginx的工作进程都在cpu0 - cpu9上运行,那么他们的数据交互是不是就少走了QPI这条路

  • 因此,要想比较极致地利用资源,这里建议分配10个cpu工作进程,由cpu0 - cpu9去执行

  • 配置效果如下

worker_processes 10;
worker_cpu_affinity 0000000001 0000000010 0000000100 0000001000 0000010000 0000100000 0001000000 0010000000 0100000000 1000000000

nginx调优-cpu亲和相关推荐

  1. golang 修改nginx配置文件_「系统架构」Nginx调优,不可错过的几点

    通常,Nginx在安装完后,不用更改任何配置信息,我们就可以直接运行它.但是,这显然不能满足我们的生产要求.在生产中,要让Nginx能正常高效地运行我们的应用,我们通常需要对Nginx的配置文件进行一 ...

  2. 不就是要个30K的薪资,他还问我Nginx调优

    我是一个运维"老鸟",目前在到处找工作阶段.周三刚面试完一家公司,还是非常中意的公司.结果是我中意公司,公司不中意我,妥妥的黄了. 面试完我才知道,Linux云计算工程师必须能精通 ...

  3. 运维之道 | Nginx调优

    Nginx调优 文章目录 Nginx调优 一.隐藏 Nginx 版本号 二.隐藏 Nginx 版本号和软件名 三.更改 Nginx 服务的默认用户 四.优化 Nginx worker 进程数 五.绑定 ...

  4. 自定义变量 配置文件_「系统架构」Nginx调优之变量的使用(3)

    在上一篇文章「系统架构」Nginx调优之变量的使用(2)中我们介绍了自定义变量和内置变量,下面我们继续接着介绍Nginx中变量的可见性和动态内置变量. 变量的可见性 nginx中的变量虽然不全是全局变 ...

  5. jq发送动态变量_「系统架构」Nginx调优之变量的使用(3)

    在上一篇文章「系统架构」Nginx调优之变量的使用(2)中我们介绍了自定义变量和内置变量,下面我们继续接着介绍Nginx中变量的可见性和动态内置变量. 变量的可见性 nginx中的变量虽然不全是全局变 ...

  6. nginx调优(一)

    (1).隐藏nginx版本号 隐藏版本号可以有效避免黑客根据nginx版本信息,查找对应漏洞进行攻击. 下载nginx源码包(http://nginx.org/en/download.html)并上传 ...

  7. LNMP调优-Nginx调优

    1.1 Nginx编译前的优化 [root@yunzu63 ~]# tar zxvf nginx-1.12.2.tar.gz [root@yunzu63 local]# cd nginx-1.12.2 ...

  8. Nginx的一些配置项,Nginx调优

    缘起 接触nginx(以下简称ng)也并不是才接触的,其实笔者早在2015年的时候就已经在项目中使用过ng了,但限于当时的知识有限,需要学习的东西也很多,一直没能对ng做深入的了解.近来项目稍空,所以 ...

  9. 【运维技术面试】nginx调优你都做过哪些?

    这个问题也是在运维面试中经常问的一个问题. 这样的问题,我们该怎么回答呢? 一般情况下,类似于这样的问题,一定要回答的全面一点. 这里的全面并不是技术上的全面,而是你对nginx的理解的全面. 比如, ...

最新文章

  1. “神奇女侠”Gal Gadot穿性感粉色吊带乱伦?原来都是深度学习惹的祸
  2. 工控服务器性能指标,PLC的7大性能指标
  3. aix 5.3 安装oracle 10g r2,在AIX5上安装ORACLE10G R2的步骤
  4. QML中导入JavaScript资源
  5. (一)数据结构与算法简介
  6. hp-ux锁定用户密码_我们如何简化925移动应用程序的用户入门— UX案例研究
  7. Origin绘制双Y或双X折线图(不同坐标)
  8. springMVC怎么改变form的提交方式为put或者delete
  9. C++类的成员变量和成员函数的介绍
  10. CSS自定义动画@keyframes的使用
  11. c# json 汉字乱码_json.net中文乱码问题
  12. 【Hadoop学习】Super用户以其他用户的名义执行操作
  13. android 问题汇总系列之三
  14. Delphi已经25岁了,我的公司每天都在使用Delphi开发跨平台的实时视频会议软件APP
  15. Excel·VBA数组组合函数、组合求和
  16. OSPF笔记[DR与BDR]
  17. 程序分析-Joern工具工作流程分析
  18. 2013江苏计算机二级vfp试题,2008年春季江苏省计算机等级考试二级VFP考试试题(含答案)...
  19. Mac brew update手顺
  20. uniapp实现加载图片失败显示占位图

热门文章

  1. 双重锁检查机制的单例模式为什么要使用volatile关键字?
  2. php fsockopen http,Php 应用 fsockopen发送http请求
  3. 【转】美国互联网电视商Netflix入华 将植入海信电视
  4. Swiper插件之Animate动画
  5. 01基于HLS的加速器Overlay设计实例 - 快速生成硬件IP
  6. 韦氏评级:DeFi使ETH成为机构投资者投资组合中重要的部分
  7. I.MX6ULL_Linux_系统篇(21) kernel启动流程
  8. html5清除圆形区域,canvas圆形清理
  9. html 在ios下怎么静音,iphone – 如何在iOS上的PJSIP调用中实现静音功能
  10. Unity用脚本配置简单的数字艺术字体CustomFont