日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
什么是PHPWorker及應(yīng)該如何使用

在選擇托管計(jì)劃時(shí),選擇最符合您的wordpress網(wǎng)站需求的計(jì)劃非常重要。

十多年的寧安網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷(xiāo)網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整寧安建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“寧安網(wǎng)站設(shè)計(jì)”,“寧安網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

例如,一個(gè)每月有50,000名訪(fǎng)問(wèn)者的電子商務(wù)網(wǎng)站通常比具有相同流量的簡(jiǎn)單博客對(duì)資源的要求要高得多。

這僅僅是因?yàn)殡娮由虅?wù)網(wǎng)站本質(zhì)上通常是動(dòng)態(tài)的,并且需要更多資源用于php和數(shù)據(jù)庫(kù)查詢(xún)。

這就是PHP worker發(fā)揮作用的地方。閱讀下文,了解PHP worker是什么以及如何使用它們來(lái)加快您網(wǎng)站上請(qǐng)求的處理速度。

什么是PHP worker?

在WordPress的上下文中,PHP worker構(gòu)建頁(yè)面、處理計(jì)劃的后臺(tái)任務(wù)等等。由于PHP worker直接負(fù)責(zé)生成HTML頁(yè)面以提供給您網(wǎng)站的訪(fǎng)問(wèn)者,因此他們決定了您的網(wǎng)站在任何給定時(shí)間可以同時(shí)處理多少個(gè)未緩存的請(qǐng)求。

例如,假設(shè)您的WordPress站點(diǎn)配備了兩個(gè)PHP workers,并且沒(méi)有設(shè)置頁(yè)面緩存。如果四個(gè)請(qǐng)求同時(shí)到達(dá)您的站點(diǎn),則其中兩個(gè)請(qǐng)求將立即得到處理,而另外兩個(gè)則必須在隊(duì)列中等待,直到前兩個(gè)請(qǐng)求完成處理。

盡管我們實(shí)現(xiàn)了服務(wù)器級(jí)緩存,但對(duì)于繞過(guò)或丟失緩存的請(qǐng)求,PHP workers變得非常重要,因?yàn)樗麄儽仨殲槊總€(gè)請(qǐng)求工作。

通常我們會(huì)在電子商務(wù)和社區(qū)論壇網(wǎng)站上看到很多未緩存的請(qǐng)求。因此,這些站點(diǎn)將需要額外的PHP workers來(lái)確保處理每個(gè)請(qǐng)求而不會(huì)出現(xiàn)延遲或超時(shí)。

如果您的網(wǎng)站經(jīng)過(guò)高度優(yōu)化或沒(méi)有大量PHP代碼(例如復(fù)雜的主題或大量WordPress插件),那么處理每個(gè)請(qǐng)求應(yīng)該幾乎立即發(fā)生。即使有2個(gè)PHP workers和4個(gè)請(qǐng)求,所有4個(gè)請(qǐng)求都將很快得到處理。

簡(jiǎn)單地說(shuō),PHP workers是運(yùn)行PHP代碼的服務(wù)器上的后臺(tái)進(jìn)程。

WordPress如何使用PHP Workers?

在我們討論如何優(yōu)化WordPress的PHP worker使用之前,我們必須首先了解WordPress如何使用PHP worker。

未緩存環(huán)境中的典型請(qǐng)求如下所示:

在上面突出顯示的過(guò)程中,第3步是最耗費(fèi)時(shí)間和資源的(CPU和RAM)。具有最少數(shù)據(jù)庫(kù)查詢(xún)和高效PHP代碼的高度優(yōu)化的站點(diǎn)將相對(duì)較快地完成第三步。

相反,一個(gè)編寫(xiě)糟糕的PHP代碼并進(jìn)行大量不必要的數(shù)據(jù)庫(kù)查詢(xún)的站點(diǎn)將花費(fèi)更多的時(shí)間來(lái)完成第3步,這意味著請(qǐng)求將占用PHP worker更長(zhǎng)的時(shí)間。

PHP Worker與CPU的關(guān)系

當(dāng)談到WordPress性能時(shí),PHP worker和可用CPU之間的關(guān)系是一個(gè)需要考慮的重要因素。

如果CPU資源不足是您網(wǎng)站的瓶頸,那么增加PHP worker的數(shù)量不會(huì)提高您網(wǎng)站的性能——它只會(huì)讓您的網(wǎng)站同時(shí)處理更多請(qǐng)求,而每個(gè)請(qǐng)求的性能會(huì)降低。

讓我解釋。

想象一個(gè)帶有一根軟管的消防栓。只需連接一根軟管,消火栓就能提供足夠的水壓。現(xiàn)在,如果我們將十根軟管連接到消火栓上會(huì)發(fā)生什么?

有限的水壓分布在十根軟管上,這意味著每根單獨(dú)的軟管完成工作所需的水壓較小。在這個(gè)類(lèi)比中,消火栓是CPU,軟管是PHP worker。

考慮到上述情況,如果您的主機(jī)不斷建議您增加PHP worker而沒(méi)有提及CPU,您應(yīng)該小心。

讓我們暫時(shí)回到消防栓的比喻。

想象一下,您需要用5根軟管撲滅10場(chǎng)火災(zāi)。連接所有五根軟管后,您會(huì)意識(shí)到消火栓仍在提供足夠的水壓。

在這種情況下,連接更多軟管是有意義的,因?yàn)橄鹚ǖ乃畨翰皇瞧款i。

同樣,如果您的站點(diǎn)在CPU和RAM開(kāi)銷(xiāo)充足的情況下表現(xiàn)不佳,那么您應(yīng)該考慮增加PHP worker的數(shù)量作為提高性能的一種選擇。

如何優(yōu)化您網(wǎng)站的PHP Worker使用

我們已經(jīng)解釋過(guò)PHP workers是使用PHP代碼生成HTML頁(yè)面的后臺(tái)進(jìn)程?,F(xiàn)在,減少和優(yōu)化PHP workers使用的最明顯方法是減少滿(mǎn)足對(duì)您的站點(diǎn)的請(qǐng)求所需的CPU和PHP資源量。

這是如何做到的。

1. 為您的WordPress網(wǎng)站設(shè)置緩存

減少PHP worker使用的第一步是為您的WordPress站點(diǎn)設(shè)置緩存層。默認(rèn)情況下,WordPress是一個(gè)動(dòng)態(tài)CMS,可以按需滿(mǎn)足每個(gè)頁(yè)面請(qǐng)求。

對(duì)于博客、在線(xiàn)雜志和作品集等許多網(wǎng)站,使用PHP為每個(gè)請(qǐng)求動(dòng)態(tài)生成頁(yè)面是不必要的。

頁(yè)面緩存

您當(dāng)前正在閱讀的博客文章是不需要?jiǎng)討B(tài)生成的頁(yè)面的完美示例。與我們的許多其他文章一樣,此文章中的內(nèi)容被設(shè)計(jì)為靜態(tài)的,因此無(wú)需花費(fèi)CPU資源來(lái)連續(xù)生成相同的頁(yè)面。

相反,最好讓PHP生成一次頁(yè)面然后緩存它。與使用PHP動(dòng)態(tài)生成頁(yè)面相比,頁(yè)面緩存具有許多明顯的優(yōu)勢(shì)。

例如,想象一下,如果您網(wǎng)站上的博客文章在發(fā)布后的幾個(gè)小時(shí)內(nèi)傳播開(kāi)來(lái)并獲得100,000次頁(yè)面瀏覽量。如果沒(méi)有頁(yè)面緩存,您的PHP worker可能會(huì)不堪重負(fù),您的服務(wù)器可能會(huì)崩潰。

使用頁(yè)面緩存,只會(huì)動(dòng)態(tài)生成首頁(yè)視圖。其他99,999個(gè)請(qǐng)求將從您的頁(yè)面緩存中提供服務(wù),該緩存使用相對(duì)較少的CPU資源。

有兩種方法可以為您的WordPress網(wǎng)站設(shè)置頁(yè)面緩存。

為了獲得最佳性能,我們建議盡可能使用服務(wù)器級(jí)頁(yè)面緩存,比如使用Nginx的FastCGI緩存模塊以獲得超快的性能。

如果您的主機(jī)不提供服務(wù)器級(jí)頁(yè)面緩存選項(xiàng),則下一個(gè)最佳選擇是使用WordPress緩存插件在應(yīng)用程序級(jí)別實(shí)現(xiàn)頁(yè)面緩存。

對(duì)象緩存

對(duì)于無(wú)法有效利用頁(yè)面緩存的WooCommerce商店、社區(qū)論壇和其他WordPress站點(diǎn),在MySQL數(shù)據(jù)庫(kù)前添加像Redis這樣的持久對(duì)象緩存可以提高性能并減少 PHP worker的負(fù)載。

如果沒(méi)有持久對(duì)象緩存,MySQL數(shù)據(jù)庫(kù)查詢(xún)將為每個(gè)請(qǐng)求執(zhí)行,即使結(jié)果與前一個(gè)查詢(xún)相同。

例如,繞過(guò)頁(yè)面緩存的社區(qū)論壇站點(diǎn)將對(duì)數(shù)據(jù)庫(kù)進(jìn)行單獨(dú)的相同查詢(xún)以獲取帖子數(shù)據(jù)以構(gòu)建頁(yè)面。

對(duì)于高流量和大量數(shù)據(jù)庫(kù)的站點(diǎn),這種查詢(xún)數(shù)據(jù)庫(kù)的方法效率低下,因?yàn)樗褂肞HP worker為單獨(dú)的請(qǐng)求生成相同的查詢(xún)結(jié)果。這就是Redis的用武之地。

Redis將數(shù)據(jù)庫(kù)查詢(xún)的結(jié)果存儲(chǔ)在RAM中,這允許PHP抓取已經(jīng)執(zhí)行的查詢(xún)結(jié)果。這種對(duì)象緩存方法允許PHP worker節(jié)省CPU資源并花費(fèi)更少的時(shí)間來(lái)完成請(qǐng)求,因?yàn)樗酥貜?fù)數(shù)據(jù)庫(kù)查詢(xún)的需要。

2. 優(yōu)化你的PHP代碼

除了設(shè)置頁(yè)面緩存之外,另一個(gè)可以幫助您減少PHP worker使用的策略是優(yōu)化您的PHP代碼。在WordPress的上下文中,“優(yōu)化PHP代碼”可能意味著各種不同的東西,所以讓我們更深入地了解一下。

WordPress最受歡迎和最討厭的功能之一(取決于你問(wèn)誰(shuí))是它通過(guò)插件和代碼片段的可擴(kuò)展性。

如果您想向您的WordPress網(wǎng)站添加股票行情小部件,可以使用插件。同樣,如果您想添加自定義字體,也有一個(gè)functions.php代碼片段。

使用附加功能擴(kuò)展WordPress核心變得如此容易,以至于我們經(jīng)常過(guò)火而沒(méi)有考慮對(duì)網(wǎng)站性能的潛在影響。

因此,優(yōu)化PHP代碼的第一種方法是執(zhí)行站點(diǎn)范圍的審核,以確定哪些插件和代碼片段是真正需要的。

選擇優(yōu)質(zhì)插件

通常情況下,WordPress網(wǎng)站上的插件數(shù)量并不像插件的質(zhì)量那么重要。如果插件在過(guò)去六個(gè)月內(nèi)沒(méi)有更新,我們建議選擇另一個(gè)符合要求的插件。

這樣做的原因是WordPress正在不斷改進(jìn)。如果一個(gè)插件多年沒(méi)有更新,很可能它的代碼沒(méi)有使用最新的WordPress開(kāi)發(fā)和安全最佳實(shí)踐。

相反,如果插件每隔幾周不斷更新,那么開(kāi)發(fā)人員很可能會(huì)認(rèn)真對(duì)待質(zhì)量,這使其成為您的WordPress網(wǎng)站的不錯(cuò)選擇。

僅在需要時(shí)使用插件

如果您希望在您的網(wǎng)站上執(zhí)行一項(xiàng)簡(jiǎn)單的任務(wù),例如添加JavaScript或CSS,那么您并不總是需要插件。相反,您可以將代碼直接添加到主題的PHP模板或帶有子主題的style.css文件中。

下次當(dāng)您考慮安裝插件時(shí),請(qǐng)先花一些時(shí)間看看它是否100%必要。有時(shí),沒(méi)有辦法安裝另一個(gè)插件,這沒(méi)關(guān)系。其他時(shí)候,您可以通過(guò)不安裝不必要的插件來(lái)避免添加額外的代碼膨脹。

選擇輕量級(jí)主題

根據(jù)我們監(jiān)控?cái)?shù)千個(gè)WordPress網(wǎng)站的經(jīng)驗(yàn),我們發(fā)現(xiàn)主題偶爾會(huì)導(dǎo)致PHP性能不佳。為了迎合WordPress作為通用CMS的多功能性,一些開(kāi)發(fā)人員對(duì)主題進(jìn)行編碼以適用于各種用例。

通常,這會(huì)導(dǎo)致代碼繁重且臃腫的主題無(wú)法有效地使用PHP和數(shù)據(jù)庫(kù)查詢(xún)。

當(dāng)建立一個(gè)WordPress站點(diǎn),它是重要的選擇一個(gè)主題,這是最高效的,可定制的-  GeneratePress,OceanWP和Astra有三個(gè)例子。

3. 選擇一個(gè)注重性能的WordPress主機(jī)

信不信由你,選擇正確的WordPress主機(jī)會(huì)對(duì)您網(wǎng)站的性能產(chǎn)生巨大影響。由于PHP worker的效率與CPU和RAM直接相關(guān),因此將您的網(wǎng)站托管在具有最新硬件的現(xiàn)代服務(wù)器上可以幫助您優(yōu)化 PHP 工作者的使用。

以下是兩個(gè)示例,說(shuō)明為什么選擇以性能為中心的主機(jī)對(duì)您的WordPress網(wǎng)站很重要。

高性能CPU

PHP使用CPU資源來(lái)執(zhí)行代碼。更快的CPU意味著更快的代碼執(zhí)行。

快速SSD存儲(chǔ)

磁盤(pán)I/O速度會(huì)對(duì)代碼執(zhí)行和數(shù)據(jù)庫(kù)查詢(xún)產(chǎn)生直接影響。如果您的數(shù)據(jù)庫(kù)存儲(chǔ)在速度較慢的機(jī)械磁盤(pán)或基于云的SSD上而沒(méi)有足夠的IOPS(每秒輸入/輸出操作),您的 PHP 工作人員將被迫花費(fèi)更多時(shí)間來(lái)滿(mǎn)足請(qǐng)求。

4. 與績(jī)效專(zhuān)家合作(可選)

如果您不確定如何解決網(wǎng)站上的性能問(wèn)題,我們建議您與合格的性能專(zhuān)家合作來(lái)診斷問(wèn)題。

專(zhuān)家可以通過(guò)使用New Relic或WordPress插件Query Monitor等高級(jí)監(jiān)控工具來(lái)幫助您識(shí)別代碼中的特定瓶頸。

通過(guò)放大和檢查單個(gè)PHP進(jìn)程和數(shù)據(jù)庫(kù)查詢(xún),可以識(shí)別給您網(wǎng)站的PHP worker帶來(lái)高負(fù)荷的特定代碼塊及其相關(guān)功能。

總結(jié)PHP worker優(yōu)化,請(qǐng)記住以下提示。

PHP Workers不足的結(jié)果

為了讓您的WordPress網(wǎng)站獲得快速可靠的性能,確保它有足夠的PHP workers非常重要。當(dāng)PHP worker已經(jīng)在一個(gè)站點(diǎn)上忙碌時(shí),他們開(kāi)始建立一個(gè)隊(duì)列。

一旦達(dá)到PHP worker的限制,隊(duì)列就會(huì)開(kāi)始推出較舊的請(qǐng)求,這可能導(dǎo)致504錯(cuò)誤或不完整的請(qǐng)求。

由于缺少PHP worker,我們看到的另一個(gè)常見(jiàn)錯(cuò)誤是502 bad gateway errors。這些與504錯(cuò)誤略有不同,因?yàn)殄e(cuò)誤發(fā)生在PHP工作隊(duì)列中的60秒超時(shí)之后。

這些錯(cuò)誤不僅會(huì)給訪(fǎng)問(wèn)者帶來(lái)糟糕的用戶(hù)體驗(yàn),還會(huì)對(duì)您網(wǎng)站的SEO產(chǎn)生負(fù)面影響。

502(錯(cuò)誤網(wǎng)關(guān))錯(cuò)誤

有許多不同的因素會(huì)導(dǎo)致頁(yè)面加載緩慢或錯(cuò)誤。例如,如果未緩存的請(qǐng)求需要來(lái)自數(shù)據(jù)庫(kù)的大量數(shù)據(jù),則生成的查詢(xún)可能需要20-30秒才能完成。

在這種情況下,一個(gè)PHP worker至少會(huì)被占用半分鐘。如果您的站點(diǎn)只有兩個(gè)PHP worker,那么這些長(zhǎng)請(qǐng)求中的兩個(gè)或三個(gè)就足以開(kāi)始導(dǎo)致錯(cuò)誤。

為了解決這個(gè)問(wèn)題,優(yōu)化MySQL數(shù)據(jù)庫(kù)并在CPU尚未達(dá)到極限的情況下增加PHP worker可以提高性能。

估計(jì)所需PHP worker的數(shù)量

一般來(lái)說(shuō),以靜態(tài)內(nèi)容為主的站點(diǎn)——文章、靜態(tài)頁(yè)面和作品集——不需要很多PHP worker。

對(duì)于具有更多動(dòng)態(tài)功能(如電子商務(wù)或論壇)的大型WordPress網(wǎng)站,我們發(fā)現(xiàn)4個(gè)PHP worker是一個(gè)很好的起點(diǎn)。但是,這可能因站點(diǎn)而異,因?yàn)槊總€(gè)站點(diǎn)都有自己獨(dú)特的一組主題、插件、數(shù)據(jù)庫(kù)查詢(xún)和緩存與未緩存的比率。

在某些情況下,可能需要更多的PHP worker才能獲得快速和可靠的性能。

PHP Worker限制圖表

部分主機(jī)服務(wù)商會(huì)提供PHP worker限制圖表可讓您查看PHP引擎在其錯(cuò)誤日志中報(bào)告達(dá)到最大分配worker數(shù)量的次數(shù)。此圖表可以幫助您衡量性能優(yōu)化是否會(huì)影響您的PHP worker使用情況。

頂級(jí)緩存繞過(guò)

例如,如果您將站點(diǎn)的PHP版本從5.6切換到7.4,您可能會(huì)看到PHP worker限制下降,因?yàn)镻HP 7.4比??5.6快得多。

同樣,如果您與性能專(zhuān)家合作修復(fù)長(zhǎng)數(shù)據(jù)庫(kù)查詢(xún)并切換到更輕量級(jí)的主題,您可以使用PHP worker限制圖表查看優(yōu)化前后的差異。

緩存分析圖

您還可以使用服務(wù)器提供商的緩存分析報(bào)告(如果有)來(lái)確定緩存命中、繞過(guò)、未命中和過(guò)期的數(shù)量。在優(yōu)化您的網(wǎng)站對(duì)PHP worker的使用時(shí),此數(shù)據(jù)可能特別有用。

使用查詢(xún)字符串繞過(guò)緩存

默認(rèn)情況下,帶有查詢(xún)字符串的URLhttps://kinstalife.com/?query=123會(huì)繞過(guò)頁(yè)面緩存。在某些情況下,查詢(xún)字符串可能會(huì)導(dǎo)致不必要的PHP和CPU使用率大幅上升。

例如,如果您訪(fǎng)問(wèn)Facebook的鏈接,您通常會(huì)在URL的末尾看到查詢(xún)字符串?fbclid=。同樣,單擊電子郵件通訊中的鏈接后,您可能會(huì)看到UTM跟蹤參數(shù)。

帶有查詢(xún)字符串 (?querystring=123) 的URL

如果您網(wǎng)站上的帖子病毒式傳播,并且不斷通過(guò)查詢(xún)字符串訪(fǎng)問(wèn),您將能夠使用緩存分析報(bào)告識(shí)別特定URL。

使用該關(guān)鍵信息,您可以強(qiáng)制緩存該特定URL,以減少PHP worker的負(fù)載。

識(shí)別資源密集型插件

在某些情況下,緩存分析圖還可用于識(shí)別資源密集型插件和進(jìn)程。

例如,如果您看到頂部緩存繞過(guò)URL指向特定插件目錄中的文件,則該插件很可能是導(dǎo)致PHP worker使用率高的原因。

如果您在緩存繞過(guò)列表中看到大量與插件相關(guān)的請(qǐng)求,您可以與開(kāi)發(fā)人員合作解決問(wèn)題或切換到使用較少資源的插件。

小結(jié)

維護(hù)快速WordPress網(wǎng)站的目標(biāo)是最大限度地提高后端的效率。當(dāng)通過(guò)在worker數(shù)量、CPU使用率和代碼優(yōu)化之間找到平衡來(lái)正確利用PHP worker時(shí),WordPress可以成為一個(gè)非常高性能的CMS。


網(wǎng)頁(yè)題目:什么是PHPWorker及應(yīng)該如何使用
URL網(wǎng)址:http://www.dlmjj.cn/article/copgigc.html