Stories

List
Create Time

構建可用於生產環境的AI智能體

圍繞AI智能體的炒作確實存在,但讓我們撥開迷霧,直面實質。在過去六個月中,我致力於構建並部署用於生產環境的AI智能體,並深刻認識到演示系統與可用於生產環境的系統之間存在着巨大差距。本指南將引導您構建真正能在現實世界中工作的AI智能體,而不僅僅是在您的本地環境中運行。 作為一位深耕AI微調和大語言模型部署領域的人,我可以告訴您,構建智能體所需的心態與傳統軟件開發截然不同。 AI智能體究竟是什

Create Time

Java智能體框架的繁榮是一種代碼異味

停止構建編排框架,開始構建智能體。未來屬於那些掌握生態系統的人,而不是那些被困在構建特定語言引擎中的人。 我需要坦白。我是一個框架狂熱者。我的職業生涯建立在 Apache Camel 之上,我人生中的大部分成功都歸功於企業集成模式的優雅。我懂。如果有一個社區值得獲得諾貝爾框架獎,那就是 Java 社區。從早年在紅帽公司到整個大數據生態系統,框架 15 年來一直是 JVM 世界的引擎。我們是抽象的大

Create Time

Java 21 虛擬線程 vs 緩存線程池與固定線程池

探索 Java 併發如何從 Java 8 的增強發展到 Java 21 的虛擬線程,從而實現輕量級、可擴展且高效的多線程處理。 引言 併發編程仍然是構建可擴展、響應式 Java 應用程序的關鍵部分。多年來,Java 持續增強了其多線程編程能力。本文回顧了從 Java 8 到 Java 21 併發的演進,重點介紹了重要的改進以及 Java 21 中引入的具有重大影響的虛擬線程。 從 Java 8 開

Create Time

Java 運行時安全:輸入驗證、沙箱機制、安全反序列化

你的 Java 應用程序剛剛被攻破了。攻擊者發送了一個精心構造的 JSON 載荷,你的反序列化代碼"盡職盡責"地執行了它,現在他們正在下載你的客户數據庫。這並非假設場景——它曾在 Equifax、Apache 以及無數其他公司真實發生過。 運行時安全與防火牆或身份驗證無關。它關注的是不受信任的數據進入你的應用程序之後會發生什麼。攻擊者能否誘使你的代碼執行你從未打算做的事情?答案通常是"可以",除非

Create Time

Java數據庫應用原型

這是一個Java 數據庫應用原型,使用 Spring Boot 和容器進行測試、Keycloak 提供安全、PostgreSQL 提供數據持久化的,帶有 REST 和安全功能。 在工作中開發時,我多次需要一個簡單應用的模板,以便基於此模板開始為手頭的項目添加特定代碼。 在本文中,我將創建一個簡單的 Java 應用程序,它連接到數據庫,暴露一些 REST 端點,並使用基於角色的訪問來保護這些

Create Time

單體架構中的事件驅動架構:Java應用程序的漸進式重構

傳統觀點認為事件驅動架構屬於微服務架構範疇,服務通過消息代理進行異步通信。然而,事件驅動模式一些最具價值的應用恰恰發生在單體應用程序內部——在這些地方,緊密耦合已造成維護噩夢,而漸進式重構則提供了一條通往更好架構的路徑,且無需分佈式系統的運維複雜性。 為何在單體應用中使用事件有意義 傳統的分層單體應用存在一個特定問題:直接的方法調用在組件之間創建了僵化的依賴關係。您的訂單處理代碼直接調用庫存管理

Create Time

Spring Boot WebSocket:使用 Java 構建多頻道聊天系統

這是一個使用 WebFlux 和 MongoDB 構建響應式 Spring Boot WebSocket 聊天的分步指南,包括配置、處理程序和手動測試。 正如您可能已經從標題中猜到的,今天的主題將是 Spring Boot WebSockets。不久前,我提供了一個基於 Akka 工具包庫的 WebSocket 聊天示例。然而,這個聊天將擁有更多一些功能,以及一個相當不同的設計。 我將跳過

Create Time

Java的優勢有哪些

Java 的價值 當具有開創性的 Java 白皮書在 1995 年推出該語言時,它列出了七項使其超越競爭對手的核心價值。如今,Java 為在 AWS 和 Google Cloud 等主要雲上運行的大規模系統提供動力,這使得這些價值對於現代部署和認證路徑更具現實意義。 那份白皮書撰寫至今已過去近 30 年,雖然其中許多價值仍然有效,但在 2025 年,選擇 Java 作為您的部署平台的理由比以