TechSummary 2025-09-16
· 閱讀時間約 11 分鐘
🚀 GitHub MCP 註冊中心:加速發現 MCP 伺服器
- GitHub 正式推出 Model Context Protocol (MCP) 註冊中心,旨在解決 AI 代理(如 GitHub Copilot)與開發工具互動時,MCP 伺服器散佈各處難以發現的問題。
- MCP 註冊中心作為集中平台,簡化了 MCP 伺服器的探索、瀏覽和使用,促進更開放、互通的 AI 生態系統。
- 它提供多項功能,包括在 VS Code 內的一鍵安裝發現能力、依據 GitHub 星標和社群活躍度排序、以及與 GitHub Copilot 和任何 MCP 相容主機的整合。
- 未來規劃允許開發者直接發布 MCP 伺服器至開源 MCP 社群註冊中心,並自動同步至 GitHub MCP 註冊中心,以建立統一且可擴展的發現路徑。
🔒 MCP 安全:開發者指南
Source: https://www.docker.com/blog/mcp-security-explained/
- Model Context Protocol (MCP) 雖加速 AI 代理與工具的連結,但伴隨新的安全挑戰;研究發現 43% 的 MCP 伺服器存在指令注入漏洞。
- MCP 安全涉及供應鏈、運行時隔離、中介訪問和客戶端信任等多層面風險,可能導致機密外洩、不安全操作或代理行為被靜默修改。
- Docker 提出透過容器化執行、策略強制執行的 MCP Gateway,以及精選的 MCP Catalog & Toolkit 來實踐安全開發,降低攻擊面。
- 關鍵防禦措施包括:容器化所有 MCP 伺服器(使用最少權限)、在 Gateway 集中執行策略(簽名驗證、工具允許列表、網絡出口控制、日誌記錄)、妥善管理機密、防禦提示注入(前/後處理攔截器)及強化供應鏈。
💡 告別控制台
Source: https://blog.jetbrains.com/datagrip/2025/09/16/a-farewell-to-consoles/
- JetBrains DataGrip 及其他支援資料庫的 IDEs 將從 2025.3 版本起,將「查詢控制台 (query console)」改稱為「查詢檔案 (query file)」,以反映其本質就是檔案。
- 過去的控制台存在問題:它們不屬於專案結構、儲存在不明顯的資料夾中難以尋找、難以切換上下文,且名稱令人困惑。
- 新的基於檔案的查詢編輯模式將使查詢腳本在專案中可見,易於定位和管理,並可像普通專案檔案一樣重新附加、更改方言和資料來源。
- 當使用者升級 DataGrip 時,會出現遷移對話框,引導將所有現有控制台轉換為查詢檔案,並暫時保留舊的資料庫控制台資料夾一個版本週期。
💸 常見問題:新的 AI 配額
Source: https://blog.jetbrains.com/ai/2025/09/faq-new-ai-quota/
- JetBrains 承認新的 AI 配額比以往有所減少,此舉是為使 AI 使用成本與供應商實際的每 token 價格保持一致,以確保產品可持續發展。
- 公司承諾提升透明度,未來幾週將推出帶有使用統計的 UX 更新,以及更詳細的用量控制功能。
- AI 使用量並非固定費用,而是取決於模型類型、上下文量和對話長度;代理工作流(Agentic workflows)因迭代和自我修正可能產生更高用量。
- 建議使用者監控用量、根據任務選擇 AI 工具(代理或助理)、謹慎提示、選擇成本較低的模型、並在代理「迷失」時重新開始對話,以有效管理配額。
✨ IntelliJ IDEA 2025.3 早期預覽計畫啟動!
Source: https://blog.jetbrains.com/idea/2025/09/intellij-idea-2025-3-eap/
- IntelliJ IDEA 2025.3 的早期預覽計畫 (EAP) 已開放,提供新功能和改進的搶先體驗。
- 主要更新包括:統一分發版(更多 功能無需訂閱即可使用)、完整支援 Java 25、Spring Boot 4、JUnit 6,以及改進的 Spring Data JDBC 和 Kotlin 支援。
- 針對 Kubernetes YAML 檔案的工作體驗將得到增強,編輯器內嵌快速操作可實現更快的埠轉發和資源狀態更新。
- 使用者體驗方面,將推出新的「Islands」視覺主題,並可能成為新預設,同時改進歡迎畫面和後台任務的進度指示器。
- 遠端開發體驗將進一步優化,包括 CSS、JavaScript、TypeScript 和 shell 腳本的打字流暢度,以及更快的啟動速度。AI 支援也將首次進入終端機,提供內嵌完成功能。
☕ Java 25 LTS 與 IntelliJ IDEA
Source: https://blog.jetbrains.com/idea/2025/09/java-25-lts-and-intellij-idea/
- Java 25 作為 LTS (長期支援) 版本於 2025 年 9 月 16 日發布,IntelliJ IDEA 全面支援其穩定功能。
- Java 25 新穩定功能包含:
- 精簡源檔案與實例 main 方法 (JEP 512): 簡化
HelloWorld
類程式碼,無需public static void main(String[] args)
等樣板程式碼,初學者和原型開發更便捷。例如:void main() {
IO.println("Hello, World!");
} - 模組導入聲明 (JEP 511): 簡化常用類(如
java.base
模組)的導入,減少單獨的import
語句,方便學習和原型設計。 - 靈活的建構器主體 (JEP 513): 允許在調用
super()
之前在派生類建構器中執行語句,用於驗證或計算資料。 - 作用域值 (JEP 506): 為虛擬執行緒提供新的執行緒局部變數模型,以安全、可擴展的方式共享不可變資料,解決
ThreadLocal
的缺點。
- 精簡源檔案與實例 main 方法 (JEP 512): 簡化
- 效能和剖析器改進: 包括提前方法剖析 (JEP 515) 加速啟動、JFR 協作採樣 (JEP 518) 和方法計時與追蹤 (JEP 520) 提升可觀測性、精簡對象頭 (JEP 519) 減少記憶體開銷、以及分代 Shenandoah (JEP 521) 提升 GC 效率。
- IntelliJ IDEA 提供相關的快速修復、即時模板和配置選項,以充分利用這些新功能。建議使用者儘早升級至 Java 25,以獲得語言和運行時的雙重優勢。
☸️ Kubernetes v1.34:將卷組快照移至 v1beta2
Source: https://kubernetes.io/blog/2025/09/16/kubernetes-v1-34-volume-group-snapshot-beta-2/
- Kubernetes v1.34 將卷組快照 (Volume Group Snapshots) 功能推進到 v1beta2 階段,該功能自 Kubernetes 1.27 起作為 Alpha 特性引入,並在 1.32 版本達到 Beta。
- 卷組快照依賴於一組擴展 API,允許使用者對一組卷進行崩潰一致性快照 (crash consistent snapshots),主要目標是支援將這些快照恢復到新卷,從而基於崩潰一致性恢復點來復原工作負載。
- v1beta2 的主要更新: 解決了 Beta 版本中當 CSI 驅動程式未實現
ListSnapshots
RPC 調用時,個別VolumeSnapshotContents
和VolumeSnapshots
的restoreSize
欄位未設置的問題。 - 新增了
VolumeSnapshotInfo
結構,包含卷組快照成員的個別卷快照資訊;VolumeGroupSnapshotContentStatus
中的VolumeSnapshotHandlePairList
被替換為VolumeSnapshotInfoList
。 - 現有的 v1beta1 API 物件將通過轉換 webhook 自動轉換為新的 v1beta2 API 物件,此功能目前僅支援 CSI 卷驅動程式。
☁️ 如何使用 Amazon Q Developer 從 Java 8 遷移到 Java 17+
Source: https://dzone.com/articles/upgrading-java-version-using-amazon-q-developer
- 將 Java 應用程式從 Java 8 遷移到 Java 17+ 是一項重大挑戰,主要原因在於潛在的兼容性問題和語言規範的變更。
- 隨著 Spring Framework 6.2.10 等新版本要求 Java 17 或更高版本作為基礎,遷移涉及大量的程式碼修改和嚴格的測試。
- 文章介紹了 Amazon Q Developer,這是一個旨在協助開發者進行應用程式現代化的工具,以簡化 Java 版本升級過程。
📱 行動應用程式每週發布週期的實施
Source: https://dzone.com/articles/weekly-release-cycle-mobile-apps
- 行動應用程式開發已從偶爾的大型更新轉變為使用者期望持續改進的階段,每週發布已成為常態。
- 實施每週發布週期的目標是加速價值交付、更快修復錯誤,並在不犧牲品質的情況下維護用戶基礎。
- 這種模式不只關乎提高程式碼編寫速度,更需改變應用程式的創建、測試、發布和監控流程,如 Instagram 和 Spotify 等公司已成功實施。
🧠 超越程式碼:如何使用 AI 現代化軟體架構
Source: https://dzone.com/articles/ai-modernize-software-architecture
- 在 AI 驅動的程式碼工具(如 GitHub Copilot 和 Amazon Q)的推動下,企業團隊如今比以往任何時候都更頻繁地發布更多程式碼。
- 然而,挑戰不僅限於程式碼生成,AI 也被視為在現代化軟體架構方面發揮關鍵作用,以應對更複雜的系統需求。
🔗 使用 AWS Step Functions 進行多代理(多功能)協調
Source: https://dzone.com/articles/multi-agent-multi-function-orchestration-with-aws
- 利用 AWS Step Functions 進行多代理協調 (Multi-agent orchestration) 是一種強大的架構模式,用於將多個專門代理(如 Lambda 函數、微服務或專用 AI 模組)協調成統一且可擴展的工作流。
- 這種方法特別適用於需要多個自主代理協同工作的複雜任務,且無需硬編碼其交互,從而簡化開發並增強可靠性和可擴展性。
- 實施多代理協調可帶來多重效益,包括提高效率和生產力、增強決策、改善客戶體驗、提高適應性和可擴展性,並降低運營成本。