91精产品自偷自偷综合官网版下载-91精产品自偷自偷综合下-91精品-91精品91久久久-91精品成人-91精品成人www

網站建設資訊

NEWS

網站建設資訊

解決PHP-FPM進程導致的服務器內存占用-創新互聯

最近php-fpm服務器經常內存偏高。

創新互聯公司是一家企業級云計算解決方案提供商,超15年IDC數據中心運營經驗。主營GPU顯卡服務器,站群服務器,服務器機柜租用,海外高防服務器,機柜大帶寬,動態撥號VPS,海外云手機,海外云服務器,海外服務器租用托管等。

最簡單也是馬上見效的方法是重啟服務,干脆重啟服務器,這個對于某些臨時進程導致的內存虛高可能有效,這里顯然是不行滴。很可能影響到業務。

解決

查看服務器內存及進程狀況

解決PHP-FPM進程導致的服務器內存占用

php-fpm參數概述

下面對每個參數的意義進行簡要的概述分析

pm=dynamic

該項共有三種設置方式 static 、 dynamic 、ondemand

  • 一種是pm = static,始終保持一個固定數量的子進程,這個數由pm.max_children定義,這種方式很不靈活,也通常不是默認的。

  • 另一種是pm = dynamic,他是這樣的,啟動時,會產生固定數量的子進程(由pm.start_servers控制)可以理解成最小子進程數,而大子進程數則由pm.max_children去控制,這樣的話,子進程數會在大和最小數范圍中變化,還沒有完,閑置的子進程數還可以由另2個配置控制,分別是pm.min_spare_servers和pm.max_spare_servers,也就是閑置的子進程也可以有最小和大的數目,而如果閑置的子進程超出了pm.max_spare_servers,則會被殺掉。(注意,pm.max_spare_servers應小于pm.max_children)

  • 第三種就是pm = ondemand模式,這種模式和pm = dynamic相反,把內存放在第一位,他的工作模式很簡單,每個閑置進程,在持續閑置了pm.process_idle_timeout秒后就會被殺掉,有了這個模式,到了服務器低峰期內存自然會降下來,如果服務器長時間沒有請求,就只會有一個php-fpm主進程,當然弊端是,遇到高峰期或者如果pm.process_idle_timeout的值太短的話,無法避免服務器頻繁創建進程的問題,因此pm = dynamic和pm = ondemand誰更適合視實際情況而定。

可以看到,pm = dynamic模式非常靈活,也通常是默認的選項。但是,dynamic模式為了大化地優化服務器響應,會造成更多內存使用,因為這種模式只會殺掉超出大閑置進程數(pm.max_spare_servers)的閑置進程,比如大閑置進程數是30,大進程數是50,然后網站經歷了一次訪問高峰,此時50個進程全部忙碌,0個閑置進程數,接著過了高峰期,可能沒有一個請求,于是會有50個閑置進程,但是此時php-fpm只會殺掉20個子進程,始終剩下30個進程繼續作為閑置進程來等待請求,這可能就是為什么過了高峰期后即便請求數大量減少服務器內存使用卻也沒有大量減少,也可能是為什么有些時候重啟下服務器情況就會好很多,因為重啟后,php-fpm的子進程數會變成最小閑置進程數,而不是之前的大閑置進程數。

max_requests

即是說每個進程若超過這個數目(跟php進程有一點點關系,關 系不大),就自動殺死.

max_children

大進程數,一般來說一臺服務器正常情況下每一個php-fpm所耗費的內存在40M左右,理想大進程數可計算為1000/40=25,但是實際上內存不止有php-fpm在占用,故可根據實際情況來,適當減小使得內存不會因php-fpm進程過多而耗盡。而如果我 的”max_children”設置的較小,比如5-10個,那么php-fpm就會“很累”,處理速度也很慢,等待的時間也較長。如果長時間沒有得到處 理的請求就會出現504 Gateway Time-out這個錯誤。

request_terminate_timeout

據你服務器的性能進行設定。一般來說性能越好你可以設置越高,20分鐘-30分鐘都可以。由于我的服務器PHP腳本需要長時間運行,有的可能會超過10分 鐘因此我設置了1200秒,這樣不會導致php-fpm死掉而出現502 Bad gateway這個錯誤。

pm.start_servers

動態方式下的起始php-fpm進程數量

pm.min_spare_servers

動態方式下的最小php-fpm閑置進程數

pm.min_spare_servers

動態方式下的大php-fpm閑置進程數量

由于方便管理把php-fpm配置文件拆開了。在/opt/plesk/php/7.1/etc/php-fpm.d目錄下

解決PHP-FPM進程導致的服務器內存占用

這樣我們就可以定位到是哪個占用

[root@orion php-fpm.d]# ls

aabus.com.conf  coachrun.com.conf  jadiamortgage.com.conf  jadia.net.conf  livechat.taketours.com.conf  lltours.com.conf  sunshineboston.com.conf

[root@orion php-fpm.d]# vim livechat.taketours.com.conf

這是之前的配置文件:

pm = ondemand                       #按需ondemand
pm.max_children = 5                 #大進程數
pm.max_spare_servers = 1            #動態方式下的大php-fpm閑置進程數量
pm.min_spare_servers = 1            #動態方式下的最小php-fpm閑置進程數
pm.process_idle_timeout = 10s   #按需方式下多長時間殺掉php-fpm子進程,直到master進程
pm.start_servers = 1                #動態方式下的起始php-fpm進程數量

修改后的配置:

pm = ondemand
pm.max_children = 5
pm.max_spare_servers = 2
pm.min_spare_servers = 2
pm.process_idle_timeout = 10s
pm.start_servers = 1
pm.max_requests = 1024              指的是每個子進程在處理了1024個請求數量之后就重啟

跟蹤一陣時間后發現內存在30000kb左右波動,進程使用的物理內存百分比才0.1%
解決PHP-FPM進程導致的服務器內存占用

參考文章: https://www.centos.bz/2018/03/php-fpm%E8%BF%9B%E7%A8%8B%E8%BF%87%E5%A4%9A%EF%BC%8C%E5%86%85%E5%AD%98%E8%80%97%E5%B0%BD/

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


當前標題:解決PHP-FPM進程導致的服務器內存占用-創新互聯
轉載源于:http://www.yuzhuanjia.cn/article/dpihci.html
主站蜘蛛池模板: 91尤物在线视频 | a级国产乱理伦片 | 91导航小污女导航天天夜夜爽 | 午夜福利视频集合100092 | 午夜免费观看一级a片 | 午夜剧场免费观看 | 99久久精品免费观看区一 | 一区二区三区日韩高清 | 午夜无码一区二区三 | 91po国产在线高清福利 | 97亚洲精华液:1. | 97图片 | 成人欧美在线视频 | 看av网站| 丰满老熟女一级aa片 | 日韩av无码av | 91麻豆国产语对白在线观看 | 97精品人妻一区二区三区在线 | 午夜无码片在线观看影院y 午夜无码片在线观看影院网址 | 成a人片在线观看视频 | 东京热人妻一区二区三区 | 99国产高清久久久久久网站 | 国产99re在线观看69热 | 午夜成人av乱码无码午夜 | 97超人人澡不卡 | A片高潮抽搐揉捏奶头视频 A片高潮抽搐揉捏奶头视频在线看 | av网站在线免费观看 | av无码中文 | 91久久人人尤物 | 高清不卡一区二区亚洲 | 91香蕉国产线观看免费茄子 | 国产av激情久久无码天堂 | 99热这里只有精品最新地址 | 韩国三级理论无码电影 | 91麻豆精彩久久久久久久91 | 91九色成人国 | 国产a∨国片精品青草视频 国产a∨视频精品老师视频 | 91精品国产综合久久久久久va | 91精品欧美在线观看免费 | 国产爆乳一区不卡在线 | 天美影视电影网 |