当前位置:首页 > 教程 > 正文内容

nginx进程数配置(nginx进程数和连接数)

2023-05-12 14:00:07教程1

nginx进程数配置

我的回答:nginx worker这种工作衍生进程数,一般等于CPU的总核心数或者总核数的两倍。比如两颗4核CPU处理器,那么总核数是8。

就在nginx.conf中设置worker_processes 8;

一般进程设置成CPU核心数的1-2倍合适。

nginx进程数和连接数

Nginx

Nginx 是俄罗斯人编写的十分轻量级的 HTTP 服务器,Nginx,它的发音为“engine X”,是一个高性能的 HTTP 和反向代理服务器,同时也是一个 IMAP/POP3/SMTP 代理服务器。

Nginx 因为它的稳定性、丰富的模块库、灵活的配置和低系统资源的消耗而闻名.业界一致认为它是 Apache2.2+mod_proxy_balancer 的轻量级代替者,不仅是因为响应静态页面的速度非常快,而且它的模块数量达到 Apache 的近 2/3。对 proxy 和 rewrite 模块的支持很彻底,还支持 mod_fcgi、ssl、vhosts ,适合用来做 mongrel clusters 的前端 HTTP 响应。

目前 Nginx 在国内很多大型企业都有应用,且普及率呈逐年上升趋势。选择 Nginx 的理由也很简单:

第一,它可以支持 5W 高并发连接;

第二,内存消耗少;

第三,成本低。

Apache

Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。 [2]

Apache HTTP服务器是一个模块化的服务器,源于NCSAhttpd服务器,经过多次修改,成为世界使用排名第一的Web服务器软件。

它可以运行在几乎所有广泛使用的计算机平台上。

区别与联系

两者最核心的区别在于 apache 是同步多进程模型,一个连接对应一个进程,而 nginx 是异步的,多个连接(万级别)可以对应一个进程。

一般来说,需要性能的 web 服务,用 nginx 。如果不需要性能只求稳定,更考虑 apache ,后者的各种功能模块实现得比前者,例如 ssl 的模块就比前者好,可配置项多。epoll(freebsd 上是 kqueue ) 网络 IO 模型是 nginx 处理性能高的根本理由,但并不是所有的情况下都是 epoll 大获全胜的,如果本身提供静态服务的就只有寥寥几个文件,apache 的 select 模型或许比 epoll 更高性能。当然,这只是根据网络 IO 模型的原理作的一个假设,真正的应用还是需要实测了再说的。

nginx主进程

nginx的单机最大并发量大概在30万左右。Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好

nginx 进程数如何设置

PHPWAMP的Nginx功能不错,Nginx站点管理”特点如下:

1、添加站点可以指定任意PHP版本,多版本可以同时运行。

2、Nginx站点管理可以给每个站点分配不同的进程数,很灵活。

3、Nginx默认的6个PHP版本都是对应阶段的最后最新稳定版本,兼容性高。

4、Nginx站点管理的每个网站都将受到安全守护,可以实时保护网站正常运行。

5、自带多个php版本,自带mysql5.5、5.6、5.7,支持无限添加mysql版本和php版本

6、Nginx站点管理与原来的Apache站点管理一样强大,甚至可以说更强大,纯绿色稳定运行。

站点管理的各大PHP版本默认都已经集成了zendguard,默认支持MSSQL(SQLServer)等多个数据库。

nginx进程nobody

一、由于启动用户和nginx工作用户不一致所致

1.1查看nginx的启动用户,发现是nobody,而为是用root启动的

命令:ps aux | grep "nginx: worker process" | awk'{print $1}'

1.2将nginx.config的user改为和启动用户一致,

命令:vi conf/nginx.conf

二、缺少index.html或者index.php文件,就是配置文件中index index.html index.htm这行中的指定的文件。

1. server {

2. listen 80;

3. server_name localhost;

4. index index.php index.html;

5. root /data/www/;

6. }

如果在/data/www/下面没有index.php,index.html的时候,直接文件,会报403 forbidden。

三、权限问题,如果nginx没有web目录的操作权限,也会出现403错误。

解决办法:修改web目录的读写权限,或者是把nginx的启动用户改成目录的所属用户,重启Nginx即可解决

1. chmod -R 777 /data

2. chmod -R 777 /data/www/

四、SELinux设置为开启状态(enabled)的原因。

4.1、查看当前selinux的状态。

1. /usr/sbin/sestatus

4.2、将SELINUX=enforcing 修改为 SELINUX=disabled 状态。

1. vi /etc/selinux/config

2.

3. #SELINUX=enforcing

4. SELINUX=disabled

4.3、重启生效。reboot。

1. reboot

重启php以及nginx

killall php-fpm && php-fpm &

nginx -s reload

nginx 进程数设置多少合适

1、可以高并发连接

官方测试Nginx能够支撑5万并发连接,实际生产环境中可以支撑2~4万并发连接数。

原因,主要是Nginx使用了最新的epoll(Linux2.6内核)和kqueue(freeBSD)网路I/O模型,而Apache使用的是传统的Select模型,其比较稳定的Prefork模式为多进程模式,需要经常派生子进程,所以消耗的CPU等服务器资源,要比Nginx高很多。

2、内存消耗少

Nginx+PHP(FastCGI)服务器,在3万并发连接下,开启10个Nginx进程消耗150MB内存,15MB*10=150MB,开启的64个PHP-CGI进程消耗1280内存,20MB*64=1280MB,加上系统自身消耗的内存,总共消耗不到2GB的内存。

如果服务器的内存比较小,完全可以只开启25个PHP-CGI进程,这样PHP-CGI消耗的总内存数才500MB。

3、成本低廉

购买F5BIG-IP、NetScaler等硬件负载均衡交换机,需要十多万到几十万人民币,而Nginx为开源软件,采用的是2-clause BSD-like协议,可以免费试用,并且可用于商业用途。

BSD开源协议是一个给使用者很大自由的协议,协议指出可以自由使用、修改源代码、也可以将修改后的代码作为开源或专用软件再发布。

4、配置文件非常简单

网络和程序一样通俗易懂,即使,非专用系统管理员也能看懂。

5、支持Rewrite重写

能够根据域名、URL的不同,将http请求分到不同的后端服务器群组。

6、内置的健康检查功能

如果NginxProxy后端的某台Web服务器宕机了,不会影响前端的访问。

7、节省带宽

支持GZIP压缩,可以添加浏览器本地缓存的Header头。

8、稳定性高

用于反向代理,宕机的概率微乎其微。

9、支持热部署

Nginx支持热部署,它的自动特别容易,并且,几乎可以7天*24小时不间断的运行,即使,运行数个月也不需要重新启动,还能够在不间断服务的情况下,对软件版本进行升级。

nginx进程管理

在不启用web服务时,就会关闭nginx

本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.

本文链接:https://www.xibujisuan.cn/98836068.html