激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

        用cacti監(jiān)控php-fpm的工作狀態(tài)

        發(fā)布時間:  2012/9/10 17:26:51
        cacti搞運維的人不會陌生,可能是現(xiàn)在使用最多的監(jiān)控工具了。跟互聯(lián)網(wǎng)相關(guān)的公司可能多少都會用到cacti來監(jiān)控服務(wù)器運行狀態(tài)和一些軟件的負(fù)載情況。
           
            現(xiàn)在網(wǎng)站用的最多的后端技術(shù)可能就是php了,無論nginx還是lighttpd,如今的負(fù)載能力都非常強,在很多牛人的努力下,負(fù)載幾萬到十萬并發(fā)的都屢見不鮮。但是,這是在完全靜態(tài)的情況下,加上php就會效率大減。所以其實一個動態(tài)網(wǎng)站的負(fù)載能力的瓶頸往往都在php上面。
           
            網(wǎng)上很多文章介紹cacti是如何監(jiān)控nginx并發(fā)數(shù)的,不過目前還沒有介紹如何監(jiān)控php的工作狀態(tài)的文章,我在谷歌百度搜了一圈,也沒找到一個中文的監(jiān)控php的介紹文章,所以不才閑著沒事,簡單改造了一個模板,用來監(jiān)控php-fpm的工作情況。我相信國內(nèi)很多人可能早就用上了,只是沒工夫說而已。
           
            所謂改造,即不是我原創(chuàng)的。原作者地址在
           
            http://forums.cacti.net/viewtopic.php?f=12&t=41580
           
            我將這個模板下載下來后嘗試了一下,發(fā)現(xiàn)不是那么簡單易用,需要perl中的FCGI::Client和LWP::UserAgent等模塊的支持,這對于不熟悉perl和cpan的人來說,會很頭疼。perl語言的這個腳本同時具有安全隱患,因為他使用FCGI::Client.pm模塊來直接訪問php-fpm的9000端口,這就需要你的php-fpm監(jiān)聽在一個除127.0.0.1的其他IP上,這樣,如果你需要跨機(jī)房監(jiān)控,就勢必要把php-fpm監(jiān)聽在一個外網(wǎng)IP上,除非你指定php-fpm的訪問IP或者做VPN.不過我想大多數(shù)公司一來不具備這個技術(shù)實力,二來如果跨機(jī)房多了,改造配置也是個極麻煩的事情,改錯了就會給人家留一個9000端口的漏洞出來,人家直接架一個nginx指向php過來就可以干壞事了。
           
            所以花了5分鐘將模板稍作修改,并用shell重寫了獲取腳本。將php-fpm的狀態(tài)監(jiān)控跳轉(zhuǎn)到nginx上,從網(wǎng)頁獲取,既支持跨機(jī)房訪問,無需暴露9000端口在任何IP地址上,對php-fpm.conf文件的改動最小,唯一一個是需要改造一下nginx,加一個類似于監(jiān)控nginx的配置項。并需要cacti服務(wù)器上有curl支持,不過用yum或者apt-get安裝curl似乎比用cpan安裝模塊要簡單多了。原理和用cacti監(jiān)控nginx是一樣的。所以,如果你做過nginx的監(jiān)控,用這個模板就非常簡單了。
           
            不過這個腳本也存在一個問題,就是如果你用一臺nginx用upstream后端掛多個php-fpm負(fù)載均衡,可能會產(chǎn)生數(shù)據(jù)不準(zhǔn)確問題。這樣的話,你可以訪問上面的連接,采用原版直接訪問9000端口的方式。
           
            講一下使用這個腳本需要操作的幾個步驟:
           
            1. 你需要改變php-fpm.conf文件中的一行
           
            找到pm.status_path = /status,將前面的注釋分號去掉。保存退出
           
            2. 打開nginx.conf文件
           
            在server{}段中加入下面這段話,注意不要和你的nginx狀態(tài)監(jiān)控的重定向路徑?jīng)_突,如果沖突,請同時修改php-fpm中的設(shè)置和nginx中的設(shè)置
           
            include fastcgi_params;
           
            fastcgi_pass 127.0.0.1:9000;
           
            fastcgi_param SCRIPT_FILENAME $fastcgi_script_name;
           
            }
           
            保存退出
           
            3. 重啟php-fpm,重啟nginx
           
            嘗試訪問http://yourserver/status看是否能獲取到php-fpm信息,正常的話,應(yīng)該顯示如下
           
            pool:                                 www
           
            process manager:            dynamic
           
            start time:                     16/Jun/2012:01:28:33 +0800
           
            start since:                    67269
           
            accepted conn:                4526202
           
            listen queue:                 0
           
            max listen queue:         0
           
            listen queue len:         0
           
            idle processes:             174
           
            active processes:         1
           
            total processes:            175
           
            max active processes: 23
           
            max children reached: 0
           
            4. 將附件中解壓縮出來的的shell腳本上傳至cacti服務(wù)器的cacti/scripts文件夾下。并賦予可執(zhí)行權(quán)限。執(zhí)行測試一下看是否能獲取到php-fpm的狀態(tài)。
           
            ./cacti_check_php-fpm.sh 114.xxx.xxx.xxx 80 /status
           
            5. 將附件中的xml模板導(dǎo)入到cacti中,然后在設(shè)備那里創(chuàng)建新圖的時候,你會看到一個php-fpm fastcgi status的模板,使用它創(chuàng)建,并填上服務(wù)器IP端口和路徑就可以了,參照測試命令行寫就可以。
           
            在實際測試中,支持php 5.3.8及以上版本,5.3.8之前的php版本未測試,如有問題可修改腳本中的grep部分,一共不超過15行的腳本,簡單的很,一看就明白。

        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機(jī) 24小時售后服務(wù)電話:0371-60135900
      10. 虛擬主機(jī)/智能建站 24小時售后服務(wù)電話:0371-60135900
      11. 專注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
          0
         
         
         
         

        0371-60135900
        7*24小時客服服務(wù)熱線