Nginx 中怎么配置 worker_processes 适配鲲鹏或海光国产芯片架构

秋宇君_3955

秋宇君_3955

2026-10-12

967人浏览

原创

应以物理cpu核心数设置worker_processes,鲲鹏需arm64原生编译并启用armv8-a+crypto优化,海光建议znver2优化;须用lscpu确认真实物理核数,容器中禁用auto而显式指定,并配worker_cpu_affinity auto;同步调高文件描述符、固定epoll模型,k8s中需与resources.limits.cpu严格对齐。

nginx 中怎么配置 worker_processes 适配鲲鹏或海光国产芯片架构

在鲲鹏(ARM64)、海光(x86_64 兼容)等国产芯片架构上配置 worker_processes,核心原则不变:**以物理 CPU 核心数为基准,而非逻辑核数或盲目套用 auto**;但需特别注意编译适配、运行时识别和容器环境限制。

必须在原生环境中构建 Nginx

国产芯片不是“换个 CPU 就能跑”,Nginx 必须针对目标架构原生编译:

  • 鲲鹏(ARM64)服务器:直接在鲲鹏机器上用 gcc 编译,启用 --with-cc-opt="-march=armv8-a+crypto" 等指令集优化,禁用 x86 专属选项
  • 海光(Hygon,兼容 x86_64):按标准 x86 流程编译,但建议添加 --with-cc-opt="-march=znver2"(对应海光 C86 架构)提升向量化性能
  • 禁止跨架构交叉编译后直接部署——即使二进制能启动,也可能因浮点/原子指令不兼容导致偶发崩溃或性能异常

物理核数识别要绕过虚拟化干扰

部分国产云平台(如天翼云信创专区、移动云磐石)使用 KVM 或自研虚拟化,/proc/cpuinfo 可能失真。应以以下方式确认真实物理核数:

Nginx Hosting
Nginx Hosting

通过服务器本地nginx实例实现零认证静态游戏托管。作为所有浏览器游戏的主要部署方式,无需登录、无需令牌、无需用户操作。

下载
  • 执行 lscpu | grep -E "Core\(s\) per socket|Socket\(s\)" → 相乘得物理核总数(例如:2 sockets × 32 cores = 64)
  • 对比 nproc --all 输出:若两者差异大(如物理核 32,逻辑核 64),说明启用了超线程,此时 worker_processes 起点应为 32,不是 64
  • 在国产容器平台(如华为云 CCE Turbo 信创集群)中,auto 可能读取宿主机核数,必须显式覆盖

配置写法:推荐显式指定 + auto 绑核

不依赖 worker_processes auto 的自动探测,尤其在信创环境稳定性优先:

  • 物理核数为 32 → 写 worker_processes 32;,并紧随其后加 worker_cpu_affinity auto;(要求 Nginx ≥ 1.9.10)
  • auto 模式在此类多核 ARM/x86 平台表现可靠:它会跳过超线程对称逻辑核(如只用 CPU 0、2、4…),把每个 worker 稳定绑定到不同物理核的第一个硬件线程
  • 避免手动写十六进制掩码(如 00000001 00000010 …),国产芯片的 CPU 编号顺序与 x86 可能不同,易出错

信创场景下的关键配套动作

仅调 worker_processes 不足以发挥国产芯片性能:

  • 文件描述符必须同步提升:worker_rlimit_nofile 65535;,并在系统层设置 ulimit -n 65535(修改 /etc/security/limits.conf)
  • 事件模型固定为 use epoll;(鲲鹏/海光均基于 Linux 内核,epoll 是最优解)
  • Kubernetes 中务必与 resources.limits.cpu: "16" 严格对齐,写 worker_processes 16;,否则可能因 vCPU 配额不足引发 OOM 或调度延迟
  • 验证是否生效:重启后运行 ps -eo pid,psr,comm | grep nginx,确认各 worker 的 PSR 列稳定分布在不同编号(如 0、1、2…31),且不跳变

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

437

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

900

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2832

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

956

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

849

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

434

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2576

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4772

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

767

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpEnv手册
phpEnv手册

共0课时 | 0人学习

nginx手册
nginx手册

共0课时 | 0人学习

进程与SOCKET
进程与SOCKET

共6课时 | 0.5万人学习