Linux的php-fpm優化心得-php-fpm進程佔用記憶體大和不釋放記憶體問題

最近發現部落格的記憶體老是隔三差五地被「吃掉」了,登入後台後偶爾會出卡頓的情況,一開始懷疑是Swap不夠導致的,於是給VPS主機增加了幾個G的Swap,觀察了一段時間後發現再大的Swap也被慢慢地「吃掉」了!

很顯然是PHP某些服務一直在佔用著VPS的內存沒有釋放,導致物理內存耗儘後調用了Swap,顯然Swap沒有物理內存運行的效率高,於是就出現了進程卡死的情況了。考慮到挖站否現在用的Wordpress用的主題與外掛過多,出現這樣的情況也是正常。

LNMP架構中PHP是運行在FastCGI模式下,按照官方的說法,php-cgi會在每個請求結束的時候會回收腳本使用的全部內存,但是並不會釋放給操作系統,而是繼續持有以應對下一次PHP請求。而php-fpm是FastCGI進程管理器,用來控制php的記憶體和進程等。

Linux的php-fpm優化心得-php-fpm行程佔用記憶體大和不釋放記憶體

兩款優秀的伺服器網路流量監控工具:Ntopng和Munin-功能強大直覺

如果發現自己的VPS伺服器異常,一般地我們可以從伺服器日誌中來分析,看看是不是有不守「規矩」的IP來源。例如,我們可以使用伺服器日誌分析利器:ngxtop和GoAccess來分析統計日誌當中的IP來源、連線數量、錯誤請求、瀏覽器、流量頻寬等等。

同時,對於一些複雜的網站應用程式也可以從伺服器的網路流量分析異常原因。本篇文章就來分享兩個非常實用的伺服器網路流量監控工具:ntopng和Munin。 ntopng是NTOP的新一代版本,官方原先版本的NTOP已不再更新,新的ntopng在監控網路資料傳輸、排除網路故障方面功能十分強大。

ntopng透過分析網路流量來判斷網路上存在的各種問題,還可以監控是否有駭客正在攻擊網絡,如果網路突然變緩慢,透過Ntop截獲的資料包,可以確定是什麼類型的資料包佔據了大量頻寬,以及資料包的發送時間、資料包傳送的延遲、資料包的來源位址等。

另一款優秀的伺服器監控工具Munin,是一款類似RRD tool 的非常棒的系統監控工具,它能提供給你多方面的系統性能信息,例如磁碟、網絡、進程、系統和用戶,Munin可以將這些資訊產生Html網頁,讓你可以直接透過網頁來瀏覽各類監控數據,Munin同樣支援主從模式監控。

Zabbix安裝與使用-強大的伺服器效能監控工具掌控伺服器軟硬體資源

為了監控各大VPS主機商不同地方機房的網路線路狀況,我們可以使用免費開源網路效能監控工具視覺化主/從部署Smokeping,Smokeping強大直覺的繪圖可以幫助我們了解一定時間內IDC機房的網路狀況。

但是,如果我們還要詳細了解伺服器的CPU、記憶體、磁碟IO、SQL資料、硬碟容量、網頁載入速度、系統負載等資源使用情況,我們就需要一個像zabbix一樣的強大伺服器效能監控工具,zabbix幾乎可以監控到伺服器所有的硬體資源。

Zabbix 是 Alexei Vladishev 開發的網路監視、管理系統,在Linux、Windows系統安裝 Zabbix Agent 之後,可監視 CPU Load、網路使用狀況、硬碟容量等各種狀態。如果沒有安裝Agent ,也可以透過SNMP、TCP、ICMP等方式進行監控。

Zabbix是企業級的監控工具,可用於部署監控大規模伺服器叢集監控,對於我們個人來說,也可以利用Zabbix來即時監控自己的伺服器的運作狀況。尤其是當你查不出自己的伺服器毛病出在哪裡,利用Zabbix作全方位的監控就非常有必要了。

WordPress開啟Nginx fastcgi_cache快取加速方法-Nginx設定實例

在使用WordPress建站的過程中,對於優化Wordpress效能、加快網站存取速度這一環節走了不少的「彎路」。當網站出現存取緩慢、CPU記憶體耗盡的情況時,最開始想到的是升級伺服器配置,後來發現有些無良的VPS商家背後限制資源嚴重,加錢升級真的很傷人。

最大的體會就是同樣的配置,在不同的VPS商家那裡跑同一個網站,在同樣的流量情況下,居然一個順暢而另一個卡頓,這個給我最大的感受就是在購買VPS之前一定要看看別人的評測,尤其是VPS主機效能評測這一塊,一定要仔細對比,否則容易花不少冤枉錢。

後來給Wordpress做優化時,請關注在頁面快取上,之前用過的快取外掛程式包括但不限於WordPress Super Cache、WP Fastest Cache、W3 Total Cache、cos-html-cache、Cachify……總得來說,安裝了快取插件後提速還是有效果的,但也帶來了不少的問題。

例如配置複雜、生成規則、外掛衝突以及無法應對突發流量,也就是說使用快取外掛程式還是無法達到應對大流量衝擊的情況。最後,在朋友的推薦下啟用了Nginx fastcgi_cache緩存,直接使用Nginx為頁面生成緩存,效率比使用PHP緩存插件要高得多,特別適合小配置的VPS上使用。

免費開源PHP探針x-prober和酷炫的Linux伺服器效能即時監控工具Netdata

很多時候搞伺服器維護的朋友都希望有一個可以總覽全域的伺服器效能監控平台,這樣可以即時掌握好公司伺服器的運作動態。目前市面上也有不少的第三方的網路效能監控平台,例如阿里雲、騰訊雲、Linode、Vultr等VPS主機商自備伺服器效能監控服務。

如果是自己搭建伺服器監控平台的話,可以試試看之前有分享過伺服器日誌分析利器:ngxtop和GoAccess,它可以幫助我們從分析伺服器日誌的角度來查看伺服器異常。也可以使用Smokeping工具來監控伺服器的網路線路狀況的好壞,例如常規的 ping,dig,echoping,curl等。

這篇文章再來分享兩款優秀的伺服器監控工具:一個是免費開源PHP探針——x-prober。 PHP探針網路上有很多,但x-prober適合「愛美人士」;另一個是介面酷炫、風格漂亮的Linux伺服器效能即時監控工具-Netdata。這兩款監控可以極大的提高維運工作的「逼格」。

網路監控工具:SmokePing Nginx一鍵安裝/管理腳本與Looking Glass中文漢化

Smokeping是一個開源免費的網路效能監控工具,主要用於監視網路效能,包括常規的 ping,dig,echoping,curl等,SmokePing的優點在於採用rrdtool畫圖,監控影像即時更新,而且美觀漂亮。

之前我在Smokeping安裝與配置中有分享過SmokePing+Apache的搭建方法,這裡再來分享一個SmokePing+Nginx一鍵安裝的方法,腳本支援Master/Slaves一鍵安裝與配置,對於嫌麻煩的朋友一鍵包真的是太方便了。

另外,分享Looking Glass中文漢化版,整合IPIP提供的IP地理資訊資料並做了多處最佳化。 Looking Glass主要是用於伺服器空間速度演示,常見於一些VPS主機商,在不同的機房放置Looking Glass,讓使用者自行選擇最快的節點。

網路監控工具:SmokePing Nginx一鍵安裝/管理腳本與Looking Glass中文漢化

Linux系統磁碟空間佔滿的解決方法-No Space Left on Device錯誤

關於Linux磁碟被佔滿的問題,之前在使用WDCP面板時有遇到過,因為在面板後台開啟了網站日誌,但是日誌沒有定期刪除,長此以往導致了VPS主機的磁碟空間被日誌佔滿了。當磁碟空間達到100%時,網站就會出現一些莫名的錯誤,例如後台無法登錄,無法評論以及頁面空白等等。

不過最近在維護網路監控平台ping.wzfou.com時,發現磁碟空間還有不少,但日誌中依然報No Space Left on Device錯誤。經過排查,終於發現是Linux磁碟的inode被用完了,導致網站無法繼續寫入新的數據,最終的後台就是Smokeping也運作不正常,報表都無法顯示。

不管是磁碟空間還有磁碟的inode空間,只要被佔用滿了都會造成網站的不穩定。有時候我們可能沒有懷疑到這一點,可能還會去尋找它的問題。磁碟被佔滿最嚴重可能還會導致S#S¥H也無法進入,這時需要我們從VPS面板中執行釋放磁碟空間的相關操作了。

三步驟揪出伺服器流量異常「李鬼」-Linux伺服器流量頻寬監控與統計指令

上次有朋友在挖站否論壇中提出一個關於英文圖片站存儲的問題,問題描述中有一句話讓我印象特別深刻——“我並不推薦VPS裸機給新手,就算你能熟練使用WP建站,你也不一定能搞的定伺服器管理。 。

對於大流量大儲存的圖片、影視網站以及訪問量大的部落格網站上VPS主機主機甚至是獨立伺服器自然是最好不過的,一來可以節省成本,二來可以分攤風險。至於說的伺服器維護的問題,只要前期搭建好了Web環境,後期的維護並不是別人所說的“難於上青天”,多學習多掌握幾個命令就好了。

本篇文章就來分享一下當伺服器流量出現異常時站長應該採取的操作步驟,挖站否遇到流量異常和網站打開緩慢的情況,最後基本上可以歸結為三種:一種是網站正在遭受DD或CC攻擊;一種是伺服器記憶體或CPU耗盡;最後一種就是伺服器被「掛馬」了。

三步驟揪出伺服器流量異常「李鬼」-Linux伺服器流量頻寬監控與統計指令

訂閱@標題