nginx怎么设置最大打开文件数?

作者&投稿:凌佩 (若有异议请与网页底部的电邮联系)
~

回答一、

[root@lxadmin nginx]# cat /proc/sys/fs/file-max

   8192

   文件系统最大可打开文件数

   [root@lxadmin nginx]# ulimit -n

   1024

   程序限制只能打开1024个文件

   使用[root@lxadmin nginx]# ulimit -n 8192调整一下

   或者永久调整打开文件数 可在启动文件/etc/rc.d/rc.local末尾添加(在/etc/sysctl.conf末尾添加fs.file-max=xxx无效)

ulimit -n 8192

回答二、

Linux内核有时会报告“Too many open files”,起因是file-max默认值(8096)太小。要解决这个问题,可以root身份执行下列命令(或将它们加入/etc/rcS.d/*下的init脚本。)

# echo "65536"   /proc/sys/fs/file-max  # 适用于2.2和2.4版内核

   # echo "131072" /proc/sys/fs/inode-max # 仅适用于2.2版内核

回答三、

办法是修改操作系统的打开文件数量限制,方法如下:

1. 按照最大打开文件数量的需求设置系统, 并且通过检查/proc/sys/fs/file-max文件来确认最大打开文件数已经被正确设置。

# cat /proc/sys/fs/file-max

   如果设置值太小, 修改文件/etc/sysctl.conf的变量到合适的值。 这样会在每次重启之后生效。 如果设置值够大,跳过下步。

   # echo 2048 /proc/sys/fs/file-max

   编辑文件/etc/sysctl.conf,插入下行。

   fs.file-max = 8192

2. 在/etc/security/limits.conf文件中设置最大打开文件数, 下面是一行提示:

#

   添加如下这行。

   * - nofile 8192

这行设置了每个用户的默认打开文件数为2048。 注意"nofile"项有两个可能的限制措施。就是项下的hard和soft。 要使修改过得最大打开文件数生效,必须对这两种限制进行设定。 如果使用"-"字符设定, 则hard和soft设定会同时被设定。

   硬限制表明soft限制中所能设定的最大值。 soft限制指的是当前系统生效的设置值。 hard限制值可以被普通用户降低。但是不能增加。 soft限制不能设置的比hard限制更高。 只有root用户才能够增加hard限制值。

   当增加文件限制描述,可以简单的把当前值双倍。 例子如下, 如果你要提高默认值1024, 最好提高到2048, 如果还要继续增加, 就需要设置成4096。

另外一种情况是在创建索引的时候,也有两种可能,一种是 合并因子太小,导致创建文件数量超过操作系统限制,这时可以修改合并因子,也可以修改操作系统的打开文件数限制;另外一种是合并因子受虚拟机内存的限制,无法调整到更大,而 需要索引的doc 数量又非常的大,这个时候就只能通过修改操作系统的打开文件数限制来解决了。

在此基础上,我还修改了以下一个配置文件

   vi /etc/sysctl.conf

   添加:

   # Decrease the time default value for tcp_fin_timeout connection

   net.ipv4.tcp_fin_timeout = 30

   # Decrease the time default value for tcp_keepalive_time connection

   net.ipv4.tcp_keepalive_time = 1800

   # Turn off tcp_window_scaling

   net.ipv4.tcp_window_scaling = 0

   # Turn off the tcp_sack

   net.ipv4.tcp_sack = 0

   #Turn off tcp_timestamps

   net.ipv4.tcp_timestamps = 0

   然后 service network restart,这些都和TCP sockets有关的优化。

另外需要在 /etc/rc.d/rc.local里添加已使得重启的时候生效。

   echo "30"/proc/sys/net/ipv4/tcp_fin_timeout

   echo "1800"/proc/sys/net/ipv4/tcp_keepalive_time

   echo "0"/proc/sys/net/ipv4/tcp_window_scaling

   echo "0"/proc/sys/net/ipv4/tcp_sack

   echo "0"/proc/sys/net/ipv4/tcp_timestamps

   因为不是所有的程序都在root下跑的,所有linux有对hard 与soft open files 的区分,普通用户受hard的限制,无论ulimit -n $数值调到多高,都跑不到 /etc/security/limits.conf里nofile的值.

这样的优化后 lsof -p $java_pid|wc -l可以跑到4千以上都不会抛出too many open files。谢谢阅读,希望能帮到大家,请继续关注脚本之家,我们会努力分享更多优秀的文章。




Nginx中如何设置Js、css文件的具体过期时间?
网站速度优化关键:Nginx设置js、css文件过期时间详解<\/在提升网站速度的策略中,调整Js、css等静态文件的过期时间是一项重要措施。针对Nginx用户的需求,本文将指导如何设置这些文件的过期时间,以优化资源加载速度。首先,我们需要打开Nginx的配置文件\/etc\/nginx\/nginx.conf,定位到如下部分:location ~ .*\\...

3分钟了解nginx中那些超时设置
2. client_header_timeout: 控制客户端发送请求头的超时,同样超过60秒将返回错误。设置指令如“client_header_timeout 30s”。3. send_timeout: 服务器响应客户端的超时,如果响应未完成发送,Nginx会返回错误。默认60秒,如“send_timeout 30s”。4. keepalive_timeout: 保持客户端连接的超时,有...

nginx怎么修改跨域配置
要更改Nginx的跨域配置,首先,你需要在服务器响应头中添加特定的CORS(跨源资源共享)信息。这可以通过在Nginx配置文件中使用`add_header`指令来实现。以下是一些关键参数的说明:`Access-Control-Allow-Origin`:这个参数用于指定允许的跨域源。例如,如果你想允许所有来源的请求,可以设置为`*`,或者指定...

nginx---怎么解决这个
在进行JavaScript逆向工程时,你可能会遭遇“HTTPSConnectionPool(host='xxx', port=443): Max retries exceeded”这个错误。此问题的根源在于HTTP连接数超出最大限制。默认情况下,连接被设置为Keep-alive状态,这会导致服务器累积过多连接,从而无法创建新连接。解决策略如下:测试发现的一个有效方法是优化...

nginx超时时间最大可以设置为多少
60秒。Nginx的最大超时时间可以设置为60秒,是因为Nginx默认使用keepalive、timeout来指定KeepAlive的超时时间(timeout)。每个TCP连接最多可以保持的时间长度即为超时时间。而Nginx的默认值是75秒,浏览器最多只能保持60秒,所以可以设定为60秒。

高并发nginx,需要注意哪些配置
2. worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;为每个进程分配cpu,上例中将8 个进程分配到8 个cpu,当然可以写多个,或者将一个进程分配到多个cpu。3. worker_rlimit_nofile 65535;这个指令是指当一个nginx 进程打开的最多文件描述符数目,理论值...

nginx前端页面配置(nginx代理前端页面)
最快响应时间策略 依赖于NGINXPlus,优先分配给响应时间最短的服务器。 客户端ip绑定 来自同一个ip的请求永远只分配一台服务器,有效解决了动态网页存在的session共享问题。 匹配以png|gif|jpg|jpeg为结尾的请求,并将请求转发到本地路径,root中指定的路径即nginx本地路径。同时也可以进行一些缓存的设置。 nginx的功能...

我的网站被恶意域名指向了,请教nginx该怎么设置
为了防止域名解析恶意指向我们的站点,需要将nginx默认的空主机头禁止。修改nginx.conf ,使其主机头返回500 nginx目录:\/usr\/local\/nginx\/conf\/nginx.conf 找到:server { listen 80;server_name localhost;index index.html index.htm index.php;root \/home\/wwwroot; } 替换,有三个方案可供选...

如何正确设置nginx中remote
使用Nginx的realip模块 当Nginx处在HAProxy后面时,就会把remote_addr设为HAProxy的IP,这个值其实是毫无意义的,你可以通过nginx的realip模块,让它使用x_forwarded_for里的值。使用这个模块需要重新编译Nginx,增加--with-http_realip_module参数 set_real_ip_from 10.1.10.0\/24;real_ip_header...

nginx 配置详解是怎么样的?
Nginx配置文件主要分为四部分:main(全局配置)、server(主机设置)、upstream(上游服务器设置)和location(URL匹配特定位置后的设置)每部分包含若干个指令。Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第...

黑山县18840863469: nginx如何设置最大上传文件大小 -
满风筠菲: 最常用的方法是通过设置nginx的client_max_body_size解决nginx+php上传大文件,主要是设置上传文件大小和php脚本运行时长即可.

黑山县18840863469: 如何解决nginx上传大文件的限制 -
满风筠菲: 在nginx.conf中增加一句 client_max_body_size 30m;重启即可 30m表示最大上传30M,需要多大设置多大.

黑山县18840863469: windows下跑nginx如何有效扩大最大连接数问题 -
满风筠菲: 1、点击“开始”按钮,在弹出的快捷菜单选项中选择并单击“控制面板”.2、在打开的“控制面板”窗口找到“管理工具”.3、打开“管理工具”,找到“本地安全策略”.4、打开“本地安全设置”,在窗口左侧找到并点击“安全选项”.5、在“本地安全设置”右侧找到“交互式登陆:可被缓冲保存的前次登陆个次数”.6、双击“交互式登陆:可被缓冲保存的前次登陆个次数”选项,打开“交互式登陆:可被缓冲保存的前次登陆个次数”对话框.7、“本地安全设置”选项卡下面的“缓存”次数修改为50,即最大可同时允许50个用户同时连接本机.

黑山县18840863469: window8怎么配置nginx -
满风筠菲: 工具原料:电脑+win8+php环境 window8配置nginx方法如下: 1、首先需要准备的应用程序包. nginx:nginx/Windows-1.0.4php:php-5.2.16-nts-Win32-VC6-x86.zip (nginx下php是以FastCGI的方式运行,所以我们下载非线程安全也就是nts的php...

黑山县18840863469: 普通用户如何增加最大文件数 -
满风筠菲: 进程最大打开文件描述符数:userlimit中nofile的softlimita.查看$ulimit-n17000002.设置a.临时性:通过ulimit-Sn设置最大打开文件描述符数的softlimit,注意softlimit不能大于hardlimit(ulimit-Hn可查看hardlimit),另外ulimit-n默认查看的是softlimit,...

黑山县18840863469: nginx下的 conf.d 文件夹怎么添加conf文件 -
满风筠菲: 直接在conf.d目录下新建conf文件即可 在主配置文件nginx中已经把conf.d目录下的文件包含进来了

黑山县18840863469: 如何在windows上配置并运行Nginx -
满风筠菲: .NET Framework下载地址 WinSW-1.9-bin下载地址 把NGINX安装到C:\RUNTIME\nginx目录.平时的启动命令为:C:\RUNTIME\nginx\nginx.exe 停止它有两种方法,一种是打开进程管理器,把所有的nginx进程都杀死,而且看着它们都被杀死为止...

黑山县18840863469: freebsd 怎么限制同一个ip访问某个端口的连接数 -
满风筠菲: 一般默认是1024, 等于单个进程最大打开的文件数:ulimit -n 上限:cat /proc/sys/fs/file-max 此外还受其它因素制约,如防火墙设置等.但一般不低于1024.

黑山县18840863469: 如何调整nginx和apache服务器的header限制的大小 -
满风筠菲: 现在主流的apache和nginx服务器他们都可以自由设置header的头信息上限大小.我们通过配置文件修改来达到目的.nginx默认的header长度上限是4k,如果超过了这个值 如果header头信息请求超过了,nginx会直接返回400错误 可以通过以下...

黑山县18840863469: nginx最大连接数如何优化,nginx的tcp -
满风筠菲: 我现在在windows xp下配置nginx 但是bai最大并发连接数 只能配到最高64. 我想提高最du大并发连接数.查zhi阅资料得到结dao果是 由于windows的文件描述符的配置过低造成最大并发数无法提专高. 然后属我就去修改 windows/system32/config.nt中的files=40 =》file

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网