觀點 · 資訊分享
AWS Lambda 容器映像支援 SOCI 延遲載入:幾 GB 的映像不用下載完就能啟動,最多快 70%
AWS 讓跑在 Lambda Managed Instances 上的容器函式支援 SOCI 延遲載入:Lambda 只抓啟動時需要的檔案,其餘等程式真的讀到再抓。官方說容器啟動時間最多縮短 70%,受益最大的是好幾 GB 的 AI 與資料處理映像。
- 發布
- 2026-10-28
- 篇幅
- 約 4 分鐘 · 1,987 字
- 結構
- 7 節 + 4 題常見問題
- 標籤

一句話看懂:AWS 讓跑在 Lambda Managed Instances 上的容器函式支援 SOCI 延遲載入,不用等整個映像下載完才啟動,官方說啟動時間最多可縮短 70%。

先用白話講:SOCI 延遲載入是什麼?
想像你搬到新辦公室。傳統做法是等整車家具全部搬進來、拆完箱才能開始上班;延遲載入則是先把桌椅電腦搬進來馬上開工,其他箱子等要用到再拆。
容器映像就是那一整車家具:程式、函式庫、依賴套件全部打包在一起,大型的 AI 或資料處理映像動輒好幾 GB。以前 Lambda 要把整個映像下載、解壓縮完才能啟動函式;SOCI(Seekable OCI)是 AWS 開源的技術,它替映像做一份「目錄索引」,記下每個檔案放在哪一層的哪個位置,Lambda 就能只抓現在需要的檔案,其他的等程式真的讀到再抓。
發生什麼事
AWS 在 10 月 28 日宣布,部署在 Lambda Managed Instances(讓 Lambda 函式跑在 EC2 執行個體上、由 Lambda 代管的部署模式)上的容器映像 Event Functions,現在支援 SOCI 延遲載入。
- 官方說法:容器啟動時間最多縮短 70%
- 針對的情境:資料處理管線、高流量 API 後端、批次運算這類映像好幾 GB、以前新環境要準備好幾分鐘的工作
- 所有有 Lambda Managed Instances 的 AWS 商用區域都可用
- 開發者指南另外提醒:啟動時間會變得對映像總大小不敏感,好處最大的是只讀到一小部分內容的大型映像,例如打包了機器學習框架的那種
會影響誰?
| 情境 | 以前 | 現在 |
|---|---|---|
| 幾 GB 的 ML 推論映像擴容 | 新機器要先下載整個映像,等好幾分鐘 | 只抓啟動需要的檔案,官方說最多快 7 成 |
| 一般小映像(幾百 MB) | 本來就快 | 好處有限,官方建議開關都測一次 |
| 標準 Lambda(非 Managed Instances) | 不適用 | 仍不適用,只限 Managed Instances |
給開發者的技術細節
設定只有三步:建索引、推上 ECR、把函式的映像 URI 指到帶索引的 tag。
# 在 Amazon Linux 2023 上,用 nerdctl 替既有映像產生 SOCI 索引
sudo nerdctl image convert --soci \
$REGISTRY/my-function:v1 $REGISTRY/my-function:v1-soci
sudo nerdctl push --platform linux/arm64 $REGISTRY/my-function:v1-soci
之後把函式映像 URI 設成 my-function:v1-soci 並發布新版本,Lambda 會自動偵測索引、啟用延遲載入,不用改其他設定。要注意的限制:
- 只支援 SOCI Index Manifest v2,v1 索引不吃;映像索引必須剛好兩個項目(原映像 manifest 加上 SOCI 索引)
- 映像必須是單一架構,
--platform要跟函式的架構一致 - Lambda 不會在背景把剩下的檔案補抓完:handler 第一次讀到的檔案,會在那次呼叫時才抓,拉長那次的執行時間。官方建議把 import 與讀檔都放在初始化階段
- 用 Kiro、Claude Code、Codex 這類程式助理的人,可以裝 Agent Toolkit for AWS 的 Lambda Managed Instances skill,讓代理幫忙設定與部署
我的看法
這個功能的受益者很明確:映像大到幾 GB、又需要快速擴容的工作。接案做網站的人,Lambda 映像通常幾百 MB,SOCI 能省的時間有限,而且它只支援 Managed Instances 這種部署模式,不是標準 Lambda,別看到「快 70%」就急著改部署流程。
真正值得記下來的是官方那句提醒:延遲載入把下載成本從「啟動時」搬到「第一次讀檔時」。如果你的程式習慣在 handler 裡才 import 重型套件,開了 SOCI 之後第一次呼叫反而會變慢,而且很難從監控裡看出原因。要開就先把所有 import 搬到初始化區塊,再拿開關前後的數據比一次。
名詞小辭典
- 容器映像(Container Image):把程式、函式庫與執行環境打包成一個檔案,到哪台機器都能用同樣的方式跑。
- OCI:Open Container Initiative,容器映像與執行環境的業界共同格式標準。
- 延遲載入(Lazy Loading):先啟動、要用到哪個檔案才去抓,而不是一開始就全部下載。
- Amazon ECR:AWS 的容器映像倉庫,Lambda 從這裡拉映像。