日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

加速編譯工具構建

在持續集成的代碼構建中的耗時通常集中在2個部分,首先是從外部獲取構建所需的依賴以及代碼本身的編譯行為。通過使用Flow的自定義緩存能夠讓我們有效降低獲取依賴時的耗時。本文將介紹如何加速常見的編譯工具的構建效率。

Yarn構建加速

使用中國內地registry和mirror

使用中國內地registry倉庫避免由于海外網絡訪問導致的依賴下載緩慢的問題。

yarn config set registry https://npmmirror.com

對于構建中由于Building fresh packages導致構建慢的情況需要指定特定外部依賴的中國內地鏡像源:

yarn config set sass_binary_site "https://npmmirror.com/mirrors/node-sass/"

除了通過yarn config set指定依賴下載路徑以外,還可以通過.yarnrc進行配置。在項目根路徑中創建.yarnrc并配置以下內容:

registry "https://registry.npmmirror.com"
sass_binary_site "https://npmmirror.com/mirrors/node-sass/"
phantomjs_cdnurl "https://cdn.npmmirror.com/binaries/phantomjs"
electron_mirror "https://cdn.npmmirror.com/binaries/electron/"
sqlite3_binary_host_mirror "https://foxgis.oss-cn-shanghai.aliyuncs.com/"
chromedriver_cdnurl "https://cdn.npmmirror.com/binaries/chromedriver"

配置yarn全局緩存

設置緩存目錄,并在流水線自定義緩存中添加緩存目錄/root/.yarn配置。

# 設置全局緩存
yarn config set cache-folder ~/.yarn
# 構建中優先使用緩存中
yarn install --prefer-offline

通過以上命令設置緩存目錄,并確保下載依賴過程中優先使用本地緩存,可以最大限度減少由于外部網絡導致的依賴在下載緩慢的問題。

Npm構建加速

使用中國內地registry和mirror

說明

或者直接使用cnpm。

對于使用npm的用戶可以創建.npmrc并設置以下內容:

registry="https://registry.npmmirror.com"
sass_binary_site="https://npmmirror.com/mirrors/node-sass/"
phantomjs_cdnurl="https://cdn.npmmirror.com/binaries/phantomjs"
electron_mirror="https://cdn.npmmirror.com/binaries/electron/"
sqlite3_binary_host_mirror="https://foxgis.oss-cn-shanghai.aliyuncs.com/"
chromedriver_cdnurl="https://cdn.npmmirror.com/binaries/chromedriver"

構建中使用全局緩存

構建時,使用以下命令設置npm的全局緩存路徑,并在流水線自定義緩存配置中添加/root/.npm緩存路徑,并使用以下命令安裝依賴包,優先從本地緩存獲取依賴包:

npm config set cache ~/.npm
npm install --prefer-offline --no-audit

Golang構建加速

使用go proxy

使用Goproxy從中國內地下載外部依賴:

export GOPROXY=https://goproxy.cn

添加go mod緩存

持久化Go Mod緩存,Flow中Go構建環境的默認緩存目錄是/go/pkg/mod。用戶需要在流水線自定義緩存中添加該緩存路徑即可。 在構建過程中將會優先使用/go/pkg/mod中的本地緩存,從而減少由于外部網絡請求導致的構建慢的問題。

Python構建加速

使用pypi鏡像

使用阿里云pypi鏡像。

pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

添加pip依賴緩存

緩存pip本地依賴,流水線自定義緩存配置中添加緩存目錄/root/.cache/pip,確保pip install時優先從版本緩存中獲取依賴包。

鏡像構建加速

如果你的Dockerfile中FROM了dockerhub的鏡像或者其他海外鏡像,比如:

FROM nginx:1.19.1
.....

由于跨境網絡問題,這種Dockerfile的構建會不穩定或者比較慢,可以使用以下方式解決:將境外鏡像pull到本地,然后push到阿里云鏡像倉庫(cr.console.aliyun.com)的中國內地region(比如北京、上海等),然后修改您的Dockerfile中的FROM。比如:

docker pull nginx:1.19.1
docker tag nginx:1.19.1 registry.cn-beijing.aliyuncs.com/yournamespace/nginx:1.19.1
docker push registry.cn-beijing.aliyuncs.com/yournamespace/nginx:1.19.1
說明

請確保容器鏡像服務的命名空間yournamespace。