linux Too Many Files 問題檢視和解決方法
今天一個python處理程式報錯 Too Many Files,只看一看就是開啟了太多檔案,
檔案是用多程式啟動的,一共看了16個子程式,
然後我用 ulimit -a 檢視 當前系統設定的最大控制程式碼
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 63532
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 63532
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
其中openfile 那一行就代表單個程式可以開啟的最大控制程式碼數,這裡我設定為2048,開始是1024
然後使用 lsof -p 程式ID|wc -l 檢視程式所開啟的檔案數量,這裡的檔案包括所開啟的各種包的檔案比如json,然後發現開啟的檔案數只有60個,因為程式裡並沒有涉及到檔案的讀寫操作,所以猜想這裡的檔案數都算到了附近程裡,然後
利用 ps -ef|grep 檔名 第三行就是父程式ID, 檢視父程式所開啟檔案數也只有60幾個,所以之前的猜想是錯誤的,所以這裡猜想pymongo的底層會做讀寫操作,
隨著時間的推移會增加開啟檔案數,這裡使用
增加開啟檔案數的最大數量
ulimit -n 2048
隨後繼續觀察,歡迎給出意見
參考文章 https://blog.csdn.net/roy_70/article/details/78423880
相關文章
- Ubuntu 解決 Too many open files 問題Ubuntu
- 解決 Too many symbol filesSymbol
- Too many open files in system處理
- 解決WebLogic中Too many open files異常Web
- Too many open files報錯處理
- Too many files with unapproved license異常APP
- Mysql中too many connections問題的解決MySql
- titan-hadoop “Too many open files”修正Hadoop
- mysql備份提示 too many open files Errornumber 24MySqlError
- weblogic日誌報錯too many open filesWeb
- Linux - 修改檔案控制程式碼數(Too many open files 異常)Linux
- 關於mysql的Too many connections問題MySql
- nginx 報錯 accept4 () failed (24: Too many open files)NginxAI
- docker中使用systemctl命令時報Too many open files錯誤Docker
- 持續迴圈讀檔案,導致的too many open files如何解決
- too many open files 與程式網路連線資料檢視[轉載自北風之神巨佬的文章]
- 從原始碼角度談談open_files_limit的生成邏輯及"Too many open files"的解決思路原始碼MIT
- 粘包問題原因和解決方法
- 超過最大檔案數—Linux-x86_64 Error: 23: Too many open files in systemLinuxError
- Nginx報錯: "Too many open files accept" 和 "could not build the server_names_hash"NginxUIServer
- MySQL問題處理——1040錯誤Too many connectionsMySql
- Weblogic BEA-002616 java.io.IOException: Too many open filesWebJavaException
- krpano 問題解決之 “Too many active WebGL contexts. Oldest context will be lost.”WebContext
- Spark 環境問題記錄和解決方法Spark
- Firefox 使用常見問題和解決方法Firefox
- Redis 常見的效能問題和解決方法Redis
- MySQL: Too many connectionsMySql
- 檢測和解決Android應用的效能問題Android
- Redis常見的效能問題和解決方法UWRedis
- ActiveMQ問題分析和解決MQ
- 解決Mysql錯誤[1040]Too many connectionsMySql
- ElasticSearch啟動失敗問題彙總和解決方法Elasticsearch
- Tomcat中文亂碼問題的原理和解決方法Tomcat
- 攝像頭十大常見問題和解決方法
- Pentaho 使用中發現的幾個問題和解決方法
- 解決:ChatGPT too many requests in 1 hour.Try again laterChatGPTAI
- Many To Many could not initialize proxy – no Session的解決方法Session
- MySQL ERROR 1040: Too many connectionsMySqlError