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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
怎么加快Python應(yīng)用的啟動時間-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)怎么加快Python應(yīng)用的啟動時間,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比阿壩州網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式阿壩州網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋阿壩州地區(qū)。費(fèi)用合理售后完善,10年實體公司更值得信賴。

我聽說pipenv9.0.2已經(jīng)發(fā)布,啟動時間有了很大的改進(jìn)。

我很快就試了一下,但我覺得并不快。所以我用Python3.7的新特性來研究它。

在本文中,我將介紹該特性以及如何使用它。

啟動時間≒導(dǎo)入時間

例如,pipenv -h 的執(zhí)行時間比顯示幫助消息的時間長得多。

一般來說,當(dāng)應(yīng)用程序啟動時,會有一些啟動過程,比如加載環(huán)境變量或配置文件。

對于Python應(yīng)用程序,導(dǎo)入模塊占用了大部分啟動時間。例如,pipenv --version 花費(fèi)了大約800ms,而import pipenv 花費(fèi)了700ms。

怎么加快Python應(yīng)用的啟動時間

顯示模塊的導(dǎo)入時間

Python 3.7有新的特性來顯示導(dǎo)入模塊的時間。

這個特性是通過 -X importtime 選項或 PYTHONPROFILEIMPORTTIM 環(huán)境變量來啟用的。

例如,您可以利用以下命令來測試pipenv的導(dǎo)入時間:

怎么加快Python應(yīng)用的啟動時間

怎么加快Python應(yīng)用的啟動時間

這里是一個pipenv --version輸出結(jié)果的例子 。

研究導(dǎo)入時間

在輸出的最后面,你會看到這些行:

怎么加快Python應(yīng)用的啟動時間

在最后一行,579479表示 import pipenv 需要579479us。

在導(dǎo)入pipenv的同時,還導(dǎo)入了許多其他模塊。從上面的示例中,您可以看到 pipenv 導(dǎo)入了pipenv.cli。子導(dǎo)入以2個空格縮進(jìn)。

再看最后一行。507表示運(yùn)行pipenv模塊時只需要507us。579479-507=578972us用于子導(dǎo)入。

找出緩慢的部分

我們來從輸出中找到緩慢子樹。我選取了幾行。

怎么加快Python應(yīng)用的啟動時間

pkg_resources

如您所見,導(dǎo)入pkg_resources 很緩慢。

但令人驚訝的是,pkg_resources沒有進(jìn)行縮進(jìn);它不是pipenv的子導(dǎo)入。

這意味著pkg_resources是由pipenv腳本而不是模塊導(dǎo)入的。

怎么加快Python應(yīng)用的啟動時間

壞消息: 導(dǎo)入pkg_resources很慢。這是一個已知的問題,在不破壞向后兼容性的情況下很難修復(fù)。

好消息: 您可以避免導(dǎo)入pkg_resources!

怎么加快Python應(yīng)用的啟動時間

在安裝了wheel之后,pip會對它進(jìn)行構(gòu)建并從構(gòu)建包進(jìn)行安裝。

從wheel (.whl)和源碼包(.tar.gz)安裝是不同的過程。

從wheel安裝時,腳本中不使用pkg_resources:

怎么加快Python應(yīng)用的啟動時間

IPython

看下面的部分.

怎么加快Python應(yīng)用的啟動時間

pipenv導(dǎo)入dotenv, dotenv再導(dǎo)入 dotenv.ipython,它再導(dǎo)入IPython。

這就是為什么pipenv在我的環(huán)境中開始很慢; 我已經(jīng)安裝了IPython。

但是為什么要導(dǎo)入IPython呢?我閱讀了dotenv源碼,發(fā)現(xiàn)它是用于IPython擴(kuò)展的。

當(dāng)然,pipenv和許多dotenv用戶并不使用IPython擴(kuò)展。

我向dotenv提交了一個推送請求,建議dotenv根據(jù)需要導(dǎo)入IPython。

由于pipenv有自己的dotenv副本,所以我向pipenv提交了完全刪除dotenv.ipython的推送請求。

結(jié)論

我可以將 pipenv--version 的時間從800ms減少到500ms。

怎么加快Python應(yīng)用的啟動時間

導(dǎo)入時間分析是研究和優(yōu)化應(yīng)用程序啟動時間的好方法。

關(guān)于“怎么加快Python應(yīng)用的啟動時間”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

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


分享文章:怎么加快Python應(yīng)用的啟動時間-創(chuàng)新互聯(lián)
路徑分享:http://www.dlmjj.cn/article/coiojh.html