成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

composer自動(dòng)加載器優(yōu)化的方法-創(chuàng)新互聯(lián)

這篇文章主要介紹了composer自動(dòng)加載器優(yōu)化的方法,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

在南城等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,全網(wǎng)整合營(yíng)銷推廣,外貿(mào)網(wǎng)站制作,南城網(wǎng)站建設(shè)費(fèi)用合理。

自動(dòng)加載器優(yōu)化

通常情況下,Composer 的自動(dòng)加載器運(yùn)行速度相對(duì)而言是比較快的。 但是,由于 PSR-4 和 PSR-0 的自動(dòng)加載規(guī)則是在最終解析一個(gè)類之前需要去檢查文件系統(tǒng)。這會(huì)導(dǎo)致自動(dòng)加載的速度變得相當(dāng)緩慢,但在開發(fā)環(huán)境中,這會(huì)是一種非常便捷的加載方式,因?yàn)楫?dāng)你新建了一個(gè)類時(shí),加載器會(huì)立即發(fā)現(xiàn)并使用該類,而不需要你去重建自動(dòng)加載器的配置。

這種加載規(guī)則導(dǎo)致的問題在生產(chǎn)環(huán)境中才真正體現(xiàn)出來,在生產(chǎn)環(huán)境中,你可以在每次部署之前非常輕松的重建配置,而且在部署之間不會(huì)隨機(jī)出現(xiàn)新類,因此你不需要其一直檢查文件系統(tǒng),你通常都希望自動(dòng)加載能盡可能快速的完成。

出于以上原因,Composer 提供了一些自動(dòng)加載器的優(yōu)化策略。

注意:你不應(yīng)該在開發(fā)環(huán)境下使用本文所述的任何一種優(yōu)化策略,因?yàn)檫@會(huì)導(dǎo)致你在添加或移除類時(shí)出現(xiàn)各種問題。事實(shí)上,在開發(fā)環(huán)境中應(yīng)用這些設(shè)置所帶來的性能提升和其所帶來的問題相比,是遠(yuǎn)遠(yuǎn)不值得的。

優(yōu)化級(jí)別 1:類映射生成

怎么運(yùn)行它呢?

有幾個(gè)選項(xiàng)可以啟用此功能:

在 composer.json 的配置中設(shè)置 "optimize-autoloader": true

使用 -o / --optimize-autoloader 調(diào)用安裝或更新

使用 -o / --optimize 調(diào)用 dump-autoload

它有什么作用?

類映射生成實(shí)質(zhì)上是將 PSR-4/PSR-0 規(guī)則轉(zhuǎn)換為類映射規(guī)則。這使得一切都快很多,因?yàn)橐阎念愑成鋾?huì)立即返回路徑,而 Composer 可以保證類在那里,因此不需要文件系統(tǒng)檢查。

在 PHP 5.6+ 中,類映射也緩存在 opcache 中,這大大改善了初始化時(shí)間。如果確保啟用了 opcache ,那么類映射應(yīng)該會(huì)立即加載,類加載也會(huì)很快。

權(quán)衡

這種方法沒有真正的權(quán)衡。它應(yīng)該始終在生產(chǎn)中啟用。

的問題是它沒有跟蹤自動(dòng)加載 (即,當(dāng)它找不到給定的類時(shí)),因此那些回退到 PSR-4 的規(guī)則仍然有可能導(dǎo)致文件系統(tǒng)檢查速度變慢。要解決此問題,存在兩個(gè)二級(jí)優(yōu)化選項(xiàng),如果您對(duì)項(xiàng)目中不存在的類執(zhí)行了大量的 class_exists 檢查, 那么可以決定啟用這兩個(gè)選項(xiàng)。

優(yōu)化級(jí)別 2/A :權(quán)威類映射

怎么啟用它呢?

有幾個(gè)選項(xiàng)可以啟用此功能:

在 composer.json 的 config 鍵中設(shè)置 "classmap-authoritative": true

使用 -a / --classmap-authoritative 調(diào)用安裝或更新

使用 -a / --classmap-authoritative 調(diào)用  dump-autoload

它有什么作用呢?

啟用此選項(xiàng)會(huì)自動(dòng)啟用 1 級(jí)類映射優(yōu)化。

這個(gè)選項(xiàng)很簡(jiǎn)單,它說如果在類圖中找不到某些東西,那么它就不存在,自動(dòng)加載器不應(yīng)該根據(jù) PSR-4 規(guī)則試圖查看文件系統(tǒng)。

權(quán)衡

此選項(xiàng)能使自動(dòng)裝填器始終快速返回。另一方面,它還意味著如果由于某種原因在運(yùn)行時(shí)生成類,則不允許自動(dòng)加載。如果您的項(xiàng)目或任何依賴項(xiàng)執(zhí)行此操作,那么您可能會(huì)在生產(chǎn)中遇到 “未找到類” 的問題。小心啟用它。

注意:這不能與級(jí)別 2/B 優(yōu)化結(jié)合使用。您必須選擇一個(gè),因?yàn)樗鼈円圆煌姆绞浇鉀Q相同的問題。

優(yōu)化級(jí)別 2/B: APCu 緩存

怎么啟用它呢?

有個(gè)選項(xiàng)可以啟用此功能:

在 composer.json 的配置鍵中設(shè)置 "apcu-autoloader": true

使用 --apcu-autoloader 調(diào)用安裝或更新

使用  --apcu 調(diào)用 dump-autoload

它有什么作用?

此選項(xiàng)將 APCu 緩存添加為類映射的備用。它不會(huì)自動(dòng)生成類映射,因此如果您愿意,仍需手動(dòng)啟用 1 級(jí)優(yōu)化。

無論是否找到類,該事實(shí)總是緩存在 APCu 中,因此可以在下一個(gè)請(qǐng)求時(shí)快速返回。

權(quán)衡

此選項(xiàng)需要 APCu ,它可能對(duì)您有用也可能不適用。它還使用 APCu 內(nèi)存進(jìn)行自動(dòng)加載,但它是安全使用的,并且不會(huì)導(dǎo)致找不到類,如上面的權(quán)威類映射優(yōu)化。

注意:這不能與級(jí)別 2/A 優(yōu)化結(jié)合使用。您必須選擇一個(gè),因?yàn)樗鼈円圆煌姆绞浇鉀Q相同的問題。

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“composer自動(dòng)加載器優(yōu)化的方法”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

新聞名稱:composer自動(dòng)加載器優(yōu)化的方法-創(chuàng)新互聯(lián)
鏈接分享:http://jinyejixie.com/article22/dhdcjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、域名注冊(cè)、App開發(fā)、ChatGPT、微信公眾號(hào)、網(wǎng)站收錄

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
海晏县| 巍山| 澄城县| 凯里市| 卢湾区| 会同县| 都昌县| 大新县| 科技| 启东市| 襄汾县| 扎兰屯市| 广昌县| 奉节县| 梧州市| 乾安县| 临泽县| 柳江县| 宿松县| 大荔县| 芮城县| 泸水县| 平度市| 类乌齐县| 平乐县| 三原县| 虹口区| 新乡县| 五原县| 星子县| 安乡县| 泸州市| 东莞市| 察雅县| 比如县| 江门市| 湘阴县| 四会市| 巩义市| 木兰县| 奇台县|