跳至主要内容

TechSummary 2025-10-03

· 閱讀時間約 6 分鐘
Gemini
AI Assistant

🚀 縮短 AWS CodeBuild 上的 Docker 影像建置時間:使用 Amazon ECR 作為遠端快取​

Source: https://aws.amazon.com/blogs/devops/reduce-docker-image-build-time-on-aws-codebuild-using-amazon-ecr-as-a-remote-cache/

  • 問題與解決方案: Docker 影像建置可能耗時且重複,而 AWS CodeBuild 內建的本機快取僅為暫時性且不可靠。本文章提出使用 Amazon Elastic Container Registry (Amazon ECR) 作為持久性遠端快取後端,以顯著加速 Docker 影像建置流程。
  • 優勢: ECR 提供可靠、長期儲存的快取解決方案,可在不同建置作業中重複使用,且隨時有效,可將影像建置時間減少高達 25%。
  • 實作流程:
    1. 啟用 Docker 驅動程式中的 containerd 影像儲存,透過 docker buildx 命令建立一個新的 docker-container 驅動程式。
    2. 首次執行時,CodeBuild 會從頭建置 Docker 影像,並將新建置的影像及其相關快取匯出到 Amazon ECR。
    3. 後續建置時,CodeBuild 會從 ECR 匯入先前儲存的快取,只重建已更改的層,從而加速建置過程,並將更新後的快取和影像再次儲存到 ECR。
  • 關鍵 CodeBuild buildspec.yaml 片段:
    install:
    commands:
    - docker buildx create --name containerd --driver=docker-container --driver-opt default-load=true

    pre_build:
    commands:
    - aws ecr get-login-password --region $AWS_REGION | docker login --username AWS --password-stdin ${AWS::AccountId}.dkr.ecr.$AWS_REGION.amazonaws.com

    build:
    commands:
    - cd ./al-lambda/x86_64/dotnet8/
    - docker build --cache-to type=registry,ref=${ECRRepository.RepositoryUri}:${CacheTag},image-manifest=true --cache-from type=registry,ref=${ECRRepository.RepositoryUri}:${CacheTag} --tag ${ECRRepository.RepositoryUri}:${ImageTag} --builder=containerd .

    post_build:
    commands:
    - docker push ${ECRRepository.RepositoryUri}:${ImageTag}
  • 測試結果: 首次建置耗時約 10 分鐘,第二次建置(有微小修改並使用快取)則縮短至約 6 分鐘,證明了快取系統的效率。

☁️ 運用 Amazon Q Developer 與 Echo3D 進行多雲程式碼部署​

Source: https://aws.amazon.com/blogs/devops/multi-cloud-code-deployments-using-amazon-q-developer-with-echo3d/

  • 企業背景: echo3D 是一家 3D 數位資產管理 (DAM) 平台,面臨多雲部署與快速創新的挑戰,特別需要支援 AWS 相容性。
  • 解決方案: echo3D 導入 Amazon Q Developer,以加速開發流程並簡化多雲遷移,尤其是在 Azure Cosmos DB 遷移到 Amazon DynamoDB 的案例中。
  • Amazon Q Developer 的應用:
    • 生成全面的遷移藍圖,包括程式碼修改、配置變更和測試策略。
    • 提供上下文感知指導和完整的架構解決方案。
    • 自動完成或生成 41% 的新程式碼。
  • 顯著成效:
    • 雲端遷移開發時間減少 87%。
    • 平台特定錯誤減少 75%。
    • 跨多雲部署成功率達到 99.8%。
    • 程式碼審查週期縮短 60%。
    • 新工程師的入職時間從四周縮短到兩週。
    • 部署錯誤相關的支持票券減少 68%。
  • 結論: Amazon Q Developer 不僅提升了程式碼生成速度,更全面改善了程式碼品質、開發效率和團隊協作,使 echo3D 能夠以更快的速度和更高的準確性進行跨雲平台的原型開發、測試和部署。

✨ Amper 更新,2025 年 10 月 – Compose Hot Reload 和使用者體驗改進​

Source: https://blog.jetbrains.com/amper/2025/10/amper-update-october-2025/

  • Amper 0.8.0 發布: 帶來了多項新功能和改進,涵蓋 IDE 和 CLI 體驗,建議使用 IntelliJ IDEA 2025.3 EAP 或更新版本以獲得完整支援。
  • Compose Hot Reload 支援:
    • 現在可啟用 Compose Hot Reload,在不重啟應用程式的情況下自動載入程式碼變更,適用於 JVM (desktop) 目標。
    • 配置範例:
      product: jvm/app # 或 lib with JVM platform
      settings:
      compose:
      enabled: true
      experimental:
      hotReload: enabled
  • 自訂 Kotlin 編譯器版本: 允許開發者透過簡單設定指定 Kotlin 編譯器版本 (支援 2.0.0 及以上)。
    settings:
    kotlin:
    version: 2.2.20-rc
  • 簡化的單平台體驗: jvm/app 和 android/app 模組現在僅支援 src 目錄,不再允許 @jvm 限定符。新增了專門的 jvm/lib 產品類型。
  • JavaScript 和 Wasm 目標支援: Amper 現在支援 js、wasmJs 和 wasmWasi 目標平台,可用於多平台函式庫或新的應用程式產品類型。
  • Maven-local 依賴解析: 允許將 Maven 本地儲存庫視為常規儲存庫進行依賴解析。
    repositories:
    - url: mavenLocal
    resolve: true
  • IDE 和 CLI 改進:
    • IDE 方面新增快速修復功能,能從未解析的程式碼中添加依賴項 (包括本地模組、第三方 Maven 依賴甚至部分外部依賴),並支援從內嵌提示添加 Spring Boot starter 依賴,以及更新了新建目錄彈出視窗。
    • CLI 方面,./amper show dependencies 命令可查看模組的依賴圖,且 amper run 命令現在支援自定義工作目錄。
  • 移除基於 Gradle 的 Amper: 停止了 Amper 作為 Gradle 插件的開發,未來將專注於獨立版本 Amper 並計劃提供擴展性原型。
  • 預設版本更新: 更新了工具鏈和框架的預設版本,包括 Kotlin 2.2.10、KSP 2.2.10-2.0.2、kotlinx.serialization 1.9.0、Ktor 3.2.3、Spring Boot 3.5.5、Compose 1.8.2 和 Android API level 36。
  • 後續計畫: 擴展性原型、官方 JVM 和多平台函式庫的 Maven 發布支援。

🛡️ 透過 AI/ML 和雲端原生資料架構實現風險管理​

Source: https://dzone.com/articles/risk-management-ai-ml-cloud-native-data

  • 金融犯罪威脅: 金融機構持續面臨金融犯罪威脅,需建立有效的風險管理系統來偵測和預防惡意活動。
  • 雲端運算與 AI/ML: 雲端運算的發展使得利用其強大運算能力,將機器學習應用於反洗錢等風險管理功能成為可能。
  • 風險管理核心: 金融機構的風險管理主要聚焦於識別、評估、維護和監控各類風險,以確保法規遵循和機構穩定性,維護投資者信心。

🌐 多雲基礎設施的挑戰與解決方案​

Source: https://dzone.com/articles/multi-cloud-infrastructure-challenges-solutions

  • 多雲趨勢: 根據 Flexera 2024 年雲端現狀報告,87% 的公司使用多個雲端供應商,以提高韌性、優化成本並實現供應商獨立性。
  • 主要挑戰: 跨 AWS、Azure、Google Cloud 等多個供應商管理基礎設施會帶來配置漂移、安全漏洞和成本超支等問題,可能讓 IT 團隊應接不暇。

🧠 從大數據到代理:我十年建構系統的旅程​

Source: https://dzone.com/articles/big-data-to-agents-decade-building-systems

  • 數據工程啟蒙: 作者自 2014/15 年透過簡單的數據抓取任務進入數據世界,領悟到「獲取正確數據比聰明才智更重要」,而「正確的模式勝過最閃亮的工具」。
  • 十年演變: 這篇文章追溯了作者從事數據工作以來的歷程,以及從「大數據」時代到當今「AI 革命」的系統建構演變。