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

Linux下查看進(jìn)程打開的文件句柄數(shù)和如何修改方法

 更新時(shí)間:2016年11月19日 09:57:02   投稿:jingxian  
下面小編就為大家?guī)硪黄狶inux下查看進(jìn)程打開的文件句柄數(shù)和如何修改方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

修改文件句柄數(shù)在Linux下,我們使用ulimit -n 命令可以看到單個(gè)進(jìn)程能夠打開的最大文件句柄數(shù)量(socket連接也算在里面)。系統(tǒng)默認(rèn)值1024。

對于一般的應(yīng)用來說(象Apache、系統(tǒng)進(jìn)程)1024完全足夠使用。但是如何象squid、mysql、java等單進(jìn)程處理大量請求的應(yīng)用來說就有 點(diǎn)捉襟見肘了。如果單個(gè)進(jìn)程打開的文件句柄數(shù)量超過了系統(tǒng)定義的值,就會(huì)提到“too many files open”的錯(cuò)誤提示。如何知道當(dāng)前進(jìn)程打開了多少個(gè)文件句柄呢?下面一段小腳本可以幫你查看:

1.lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more  

在系統(tǒng)訪問高峰時(shí)間以root用戶執(zhí)行上面的腳本,可能出現(xiàn)的結(jié)果如下:

1.# lsof -n|awk '{print $2}'|sort|uniq -c |sort -nr|more  
2.    131 24204 
3.     57 24244 
4.     57 24231 
5.     56 24264 

其中第一行是打開的文件句柄數(shù)量,第二行是進(jìn)程號。得到進(jìn)程號后,我們可以通過ps命令得到進(jìn)程的詳細(xì)內(nèi)容。

1.ps -aef|grep 24204 
2.mysql    24204 24162 99 16:15 ?        00:24:25 /usr/sbin/mysqld 

哦,原來是mysql進(jìn)程打開最多文件句柄數(shù)量。但是他目前只打開了131個(gè)文件句柄數(shù)量,遠(yuǎn)遠(yuǎn)底于系統(tǒng)默認(rèn)值1024。

但是如果系統(tǒng)并發(fā)特別大,尤其是squid服務(wù)器,很有可能會(huì)超過1024。這時(shí)候就必須要調(diào)整系統(tǒng)參數(shù),以適應(yīng)應(yīng)用變化。Linux有硬性限制和軟性限制??梢酝ㄟ^ulimit來設(shè)定這兩個(gè)參數(shù)。方法如下,以root用戶運(yùn)行以下命令:

1.ulimit -HSn 4096 

以 上命令中,H指定了硬性大小,S指定了軟性大小,n表示設(shè)定單個(gè)進(jìn)程最大的打開文件句柄數(shù)量。個(gè)人覺得最好不要超過4096,畢竟打開的文件句柄數(shù)越多響 應(yīng)時(shí)間肯定會(huì)越慢。設(shè)定句柄數(shù)量后,系統(tǒng)重啟后,又會(huì)恢復(fù)默認(rèn)值。如果想永久保存下來,,可以修改 /etc/profile 把上面命令加到最后。(findsun提出的辦法比較合理)

/////////////////////////////////////////////////////////////////////////////

在 Linux下面部署應(yīng)用的時(shí)候,有時(shí)候會(huì)遇上Socket/File: Can't open so many files的問題,其實(shí)Linux是有文件句柄限制的(就像WinXP?),而且默認(rèn)不是很高,一般都是1024,作為一臺(tái)生產(chǎn)服務(wù)器,其實(shí)很容易就達(dá)到 這個(gè)數(shù)量,因此我們需要把這個(gè)值改大一些。

大概知道ulimit這個(gè)命令是相關(guān)的,上Google搜索了一下,大多數(shù)說的很含糊,也沒有統(tǒng)一說一下,經(jīng)過兩個(gè)小時(shí)看了不少文章終于弄清楚ulimit相關(guān)的一些配置問題。

我們可以用ulimit -a來查看所有限制值,我只關(guān)心文件句柄數(shù)量的問題

open files (-n) 1024

這個(gè)就是限制數(shù)量

這里,有很多ulimit的文章都說的很含糊,究竟這個(gè)1024是系統(tǒng)的限制,還是用戶的限制呢。其實(shí),這個(gè)是用戶限制來的,完整的說法,應(yīng)該是當(dāng)前用戶準(zhǔn)備要運(yùn)行的程序的限制。

1、這個(gè)限制是針對單個(gè)程序的限制

2、這個(gè)限制不會(huì)改變之前已經(jīng)運(yùn)行了的程序的限制

3、對這個(gè)值的修改,退出了當(dāng)前的shell就會(huì)消失

比如說,我先運(yùn)行了一個(gè)程序A,然后通過ulimit修改了限制為2048,然后運(yùn)行B,然后退出了shell再登錄,然后運(yùn)行C。那就只有B可以打開2048個(gè)句柄。

如果我們需要改變整體的限制值,或者我們運(yùn)行的程序是系統(tǒng)啟動(dòng)的,應(yīng)該怎么處理呢

其中一個(gè)方法,是想ulimit修改命令放入/etc/profile里面,但是這個(gè)做法并不好

正確的做法,應(yīng)該是修改/etc/security/limits.conf

里面有很詳細(xì)的注釋,比如

* soft nofile 2048

* hard nofile 32768

就可以將文件句柄限制統(tǒng)一改成軟2048,硬32768

這里涉及另外一個(gè)問題,什么是軟限制,什么是硬限制

硬限制是實(shí)際的限制,而軟限制,是warnning限制,只會(huì)做出warning

其實(shí)ulimit命令本身就有分軟硬設(shè)置,加-H就是硬,加-S就是軟

默認(rèn)顯示的是軟限制,如果修改的時(shí)候沒有加上的話,就是兩個(gè)一起改

配置文件最前面的一位是domain,設(shè)置為星號代表全局,另外你也可以針對不同的用戶做出不同的限制

修改了,重新登錄用ulimit一開就立刻生效了,不過之前啟動(dòng)過的程序要重新啟動(dòng)才能使用新的值。我用的是CentOS,似乎有些系統(tǒng)需要重啟才能生效。

ulimit其實(shí)就是對單一程序的限制

那系統(tǒng)總限制呢

其實(shí)是在這里,/proc/sys/fs/file-max

可以通過cat查看目前的值,echo來立刻修改

另外還有一個(gè),/proc/sys/fs/file-nr

只讀,可以看到整個(gè)系統(tǒng)目前使用的文件句柄數(shù)量

查找文件句柄問題的時(shí)候,還有一個(gè)很實(shí)用的程序lsof

可以很方便看到某個(gè)進(jìn)程開了那些句柄

也可以看到某個(gè)文件/目錄被什么進(jìn)程占用了。

以上這篇Linux下查看進(jìn)程打開的文件句柄數(shù)和如何修改方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Apache2.2以上版本與Tomcat整合配置及負(fù)載均衡實(shí)現(xiàn)

    Apache2.2以上版本與Tomcat整合配置及負(fù)載均衡實(shí)現(xiàn)

    今天技術(shù)總監(jiān)叫實(shí)現(xiàn)Apache和Tomacat整合,結(jié)果找了很多的資料,發(fā)現(xiàn)最方便的還是本文啊.apache2.2以上版本,無需使用jk_mod來集成tomcat,直接使用ajp,很方便,感興趣的朋友可以了解下啊
    2013-01-01
  • CentOS 6.5中SSH免密碼登錄配置教程

    CentOS 6.5中SSH免密碼登錄配置教程

    這篇文章主要介紹了CentOS 6.5中SSH免密碼登錄配置的相關(guān)資料,包括環(huán)境設(shè)置,本機(jī)生成公鑰和私鑰等知識(shí)點(diǎn),本文給大家介紹的非常詳細(xì)具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-10-10
  • Linux中的LUN、磁盤、LVM和文件系統(tǒng)映射使用

    Linux中的LUN、磁盤、LVM和文件系統(tǒng)映射使用

    這篇文章主要介紹了Linux中的LUN、磁盤、LVM和文件系統(tǒng)映射使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • Linux多線程中fork與互斥鎖過程示例

    Linux多線程中fork與互斥鎖過程示例

    大家好,本篇文章主要講的是Linux多線程中fork與互斥鎖過程示例,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下哦
    2021-11-11
  • Linux centos7如何查看目錄下的子目錄

    Linux centos7如何查看目錄下的子目錄

    這篇文章主要介紹了Linux centos7如何查看目錄下的子目錄問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 解決linux下vim中文亂碼的方法

    解決linux下vim中文亂碼的方法

    在vim中編輯一個(gè)中文文本時(shí),有時(shí)候看起來有亂碼,以前都是修修補(bǔ)補(bǔ)的弄沒有亂碼了就不管了,這個(gè)問題一直都很困擾我。突然想到這個(gè)問題想把它給解決掉,在網(wǎng)上有很多這方面的資料,但是說得不是很到位,經(jīng)過了一天的折騰并做了一些小測試終于搞定了。下面來一起看看吧。
    2016-12-12
  • 淺析Docker私有鏡像庫與阿里云對象存儲(chǔ) OSS

    淺析Docker私有鏡像庫與阿里云對象存儲(chǔ) OSS

    在本篇文章中我們給大家分享了關(guān)于Docker私有鏡像庫與阿里云對象存儲(chǔ) OSS的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們參考下。
    2018-09-09
  • Linux下coredump的配置方法以及流程

    Linux下coredump的配置方法以及流程

    這篇文章主要介紹了Linux下coredump的配置方法以及流程,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Ubuntu Linux系統(tǒng)下輕松架設(shè)nginx+php服務(wù)器應(yīng)用

    Ubuntu Linux系統(tǒng)下輕松架設(shè)nginx+php服務(wù)器應(yīng)用

    一直一來,在Ubuntu Linux系統(tǒng)下調(diào)試php的web程序都是使用的apache+php+mysql的開發(fā)環(huán)境,近來看到網(wǎng)上大家都在討論nginx架設(shè)的web服務(wù)器,據(jù)說性能比apache要高上十幾倍。所以自己想也想嘗嘗鮮,在自己的電腦上先裝一個(gè)體驗(yàn)一下!
    2009-08-08
  • linux搭建FastDFS文件服務(wù)器的實(shí)現(xiàn)步驟

    linux搭建FastDFS文件服務(wù)器的實(shí)現(xiàn)步驟

    本文主要介紹在linux服務(wù)器如何搭建FastDFS文件服務(wù)器。文中通過圖文示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評論

循化| 久治县| 邵东县| 二连浩特市| 扶绥县| 修文县| 广南县| 宾川县| 特克斯县| 华亭县| 天长市| 遂平县| 赞皇县| 永清县| 泸州市| 乌拉特后旗| 渭南市| 巫溪县| 宁河县| 汝州市| 沙洋县| 文水县| 新乡县| 铜梁县| 吉林市| 尚志市| 左贡县| 天柱县| 云南省| 封丘县| 霍山县| 临汾市| 垦利县| 溧阳市| 南开区| 福安市| 聂荣县| 长治市| 麻城市| 同心县| 万州区|