最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Nginx報Too Many Open Files總結(jié)

 更新時間:2026年01月30日 09:06:22   作者:DomDanrtsey  
本文提供了解決Nginx服務(wù)器出現(xiàn)Too many open files錯誤的方法,包括檢查和調(diào)整文件句柄限制、修改系統(tǒng)配置文件及nginx配置等,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

最近有臺nginx服務(wù)器(Linux環(huán)境)運行的錯誤日志,提示“Too many open files”,本文整理下我個人總結(jié)的解決方法:
1、檢查當(dāng)前nginx服務(wù)master 進(jìn)程 和 worker 進(jìn)程的文件句柄限制
(1)在 Nginx 運行時,檢查當(dāng)前 master 進(jìn)程的限制:

cat /proc/$(cat /var/run/nginx.pid)/limits|grep open.files

Max open files            1024                 4096                 files

(2)檢查 worker 進(jìn)程:

ps --ppid $(cat /var/run/nginx.pid) -o %p|sed '1d'|xargs -I{} cat /proc/{}/limits|grep open.files

Max open files            1024                 4096                 files     
Max open files            1024                 4096                 files 
Max open files            1024                 4096                 files 
Max open files            1024                 4096                 files

我們知道系統(tǒng)每打開一個文件,都會占用一個文件描述符,而系統(tǒng)打開文件描述符是有上限的。在centos下默認(rèn)值一般為1024,可以通過命令查看:

# ulimit -n
1024
# ulimit -a
open files                      (-n) 1024

2、首先確定下系統(tǒng)內(nèi)核允許文件打開數(shù)量的上限(內(nèi)核級別的,默認(rèn)值為95086)

# sysctl -n -e fs.file-max
95086

調(diào)整方法:
# vi /etc/sysctl.conf
fs.file-max = 6815744
# sysctl -p
其他:比如限制fs.file-max最多只能使用內(nèi)存的10%
# grep -r MemTotal /proc/meminfo | awk '{printf("%d\n",$2/10)}' 

有關(guān)系統(tǒng)核心配置可以查看相應(yīng)的man手冊:man sysctl,man sysctl.conf。
3、修改/etc/security/limits.conf文件,設(shè)置打開的文件數(shù)量上限。(系統(tǒng)級別的)

# vi /etc/security/limits.conf
*      soft    nofile  65535
*      hard    nofile  65535
*      soft    nproc   65535
*      hard    nproc   65535

其中第一行soft表示所有用戶打開文件的數(shù)量限制為65535,如果超過這個數(shù)字則提示警告信息,但是依然可以打開文件。
第二行hard表示最大的打開文件數(shù)量不能超過65535,如果超過這個數(shù)字,則無法打開文件。
這里也可以針對具體的用戶進(jìn)行相應(yīng)的設(shè)定。例如針對nginx用戶進(jìn)行設(shè)定:

nginx soft nofile 65535
nginx hard nofile 65535

修改完這里之后,退出shell重新登錄下機(jī)器查看

# ulimit -n
65535
# ulimit -a
open files                      (-n) 65535

注意:
1)、nofile代表文件句柄數(shù)量;soft nofile的值不能超過hard nofile的值
2)、如果修改完成,查看ulimit -n與ulimit -a顯示的結(jié)果依然是1024,排查如下:
(1)需要查看/etc/profile配置是否有設(shè)定ulimit相關(guān)配置,/etc/profile環(huán)境變量里的參數(shù)配置最優(yōu)先,會覆蓋limits.conf 里的配置
(2)在Centos7系統(tǒng)中,使用Systemd替代了之前的SysV。/etc/security/limits.conf文件的配置作用域縮小了。/etc/security/limits.conf的配置,只適用于通過PAM認(rèn)證登錄用戶的資源限制,它對systemd的service的資源限制不生效。因此登錄用戶的限制,通過/etc/security/limits.conf與/etc/security/limits.d下的文件設(shè)置即可。
對于systemd service的資源設(shè)置,則需修改全局配置,全局配置文件放在/etc/systemd/system.conf和/etc/systemd/user.conf,同時也會加載兩個對應(yīng)目錄中的所有.conf文件/etc/systemd/system.conf.d/.conf和/etc/systemd/user.conf.d/.conf。system.conf是系統(tǒng)實例使用的,user.conf是用戶實例使用的。

# vi /etc/systemd/system.conf
DefaultLimitNOFILE=100000
DefaultLimitNPROC=65535

(3)如果還是不生效修改配置sshd_config,編輯login、system-auth、sshd文件添加pam_limits.so

# vi /etc/ssh/sshd_config
UsePAM yes
# systemctl restart sshd

# vi /etc/pam.d/login
# vi /etc/pam.d/system-auth
# vi /etc/pam.d/sshd

session   required     pam_limits.so

3)、如果上述的方法均無法解決,可以直接將 ulimit -SHn 65536 配置到nginx啟動腳本中(注意按第4點在nginx.conf配置文件中增加打開文件數(shù)量上限后操作。)

# vi /etc/init.d/nginx
ulimit  -SHn  65536
或是
# vi /usr/lib/systemd/system/nginx
ulimit  -SHn  65536
重新加載系統(tǒng)服務(wù)
# systemctl daemon-reload
# systemctl restart nginx

最后確認(rèn)nginx主進(jìn)程與work進(jìn)程的文件打開數(shù)

# cat /proc/$(cat /var/run/nginx.pid)/limits|grep open.files
# ps --ppid $(cat /var/run/nginx.pid) -o %p|sed '1d'|xargs -I{} cat /proc/{}/limits|grep open.files

4、修改nginx配置文件,設(shè)置打開文件數(shù)量上限。(程序級別的)
在nginx.conf配置文件中增加如下設(shè)置:

# vi nginx.conf
worker_rlimit_nofile 65535;

該參數(shù)表示每個工作進(jìn)程可以打開的文件數(shù)量。作用域和worker_processes一樣。
修改了nginx文件,需要reload一下。

到此這篇關(guān)于Nginx報Too Many Open Files總結(jié)的文章就介紹到這了,更多相關(guān)Nginx報Too Many Open Files內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Nginx配置本地圖片服務(wù)器的實現(xiàn)

    Nginx配置本地圖片服務(wù)器的實現(xiàn)

    本文主要介紹了Nginx配置本地圖片服務(wù)器的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 使用Nginx和pm2部署Next.js項目

    使用Nginx和pm2部署Next.js項目

    本文主要介紹了使用Nginx和pm2部署Next.js項目,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-05-05
  • NGINX中瀏覽器的盜鏈與防止被盜的實現(xiàn)

    NGINX中瀏覽器的盜鏈與防止被盜的實現(xiàn)

    本文介紹在局域網(wǎng)內(nèi)實現(xiàn)盜鏈與防盜鏈的配置方法,通過Nginx設(shè)置valid_referers限制資源訪問來源,非法引用返回403禁止訪問,感興趣的可以了解一下
    2025-07-07
  • Nginx+Tomcat+Https 服務(wù)器負(fù)載均衡配置實踐方案詳解

    Nginx+Tomcat+Https 服務(wù)器負(fù)載均衡配置實踐方案詳解

    這篇文章主要介紹了Nginx+Tomcat+Https 服務(wù)器負(fù)載均衡配置實踐方案的相關(guān)資料,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09
  • Nginx實現(xiàn)負(fù)載均衡的方法總結(jié)

    Nginx實現(xiàn)負(fù)載均衡的方法總結(jié)

    這篇文章主要給大家總結(jié)介紹了關(guān)于Nginx實現(xiàn)負(fù)載均衡的一些方法,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用Nginx具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • 教你使用Nginx限制百度蜘蛛頻繁抓取的問題

    教你使用Nginx限制百度蜘蛛頻繁抓取的問題

    這篇文章主要介紹了使用Nginx限制百度蜘蛛頻繁抓取的問題,百度蜘蛛對網(wǎng)站的抓取頻率高和抓取量驟增導(dǎo)致服務(wù)器負(fù)載高,經(jīng)常收到警告信息,每分鐘允許百度蜘蛛抓取200次,超過頻率限制的返回503,對Nginx限制蜘蛛頻繁抓取相關(guān)知識感興趣的朋友一起看看吧
    2022-01-01
  • nginx反向代理下的長連接實現(xiàn)

    nginx反向代理下的長連接實現(xiàn)

    本文主要介紹了Nginx反向代理下的長連接實現(xiàn),包括客戶端到Nginx和Nginx到后端服務(wù)器之間的長連接設(shè)置,具有一定的參考價值,感興趣的可以了解一下
    2024-11-11
  • nginx修改配置文件不生效解決方案

    nginx修改配置文件不生效解決方案

    當(dāng)你修改了Nginx的配置文件后,需要重新加載配置文件,使得修改生效,這篇文章主要給大家介紹了關(guān)于nginx修改配置文件不生效的解決方案,需要的朋友可以參考下
    2023-08-08
  • 詳解Nginx日志配置及日志切割

    詳解Nginx日志配置及日志切割

    本篇文章主要介紹了詳解Nginx日志配置及日志切割,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • 503 service unavailable錯誤解決方案講解

    503 service unavailable錯誤解決方案講解

    這篇文章主要介紹了503 service unavailable錯誤解決方案講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08

最新評論

怀仁县| 宁安市| 侯马市| 巨野县| 隆化县| 泾川县| 南安市| 县级市| 高阳县| 始兴县| 曲周县| 武城县| 鄄城县| 内黄县| 富源县| 徐州市| 芜湖县| 金寨县| 大连市| 平武县| 革吉县| 巫溪县| 乐业县| 那坡县| 海兴县| 汝阳县| 霍林郭勒市| 赤壁市| 岑溪市| 新巴尔虎左旗| 额济纳旗| 达孜县| 治多县| 湘乡市| 安化县| 云南省| 长兴县| 舟曲县| 汤原县| 阿拉善右旗| 延川县|