動態

@menglihuaxiangbian

Netty源碼-業務流程之讀事件

Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1 Netty讀事件 1.1 READ事件,NioEventLoop#processSelectedKey在第二次循環的時候就是讀事件 現在unsafe類不一樣,NioSocketChannel$NioSocketChannelUnsafe類,進入Read方法,我們進入了Abstarc

menglihuaxiangbian 頭像

@menglihuaxiangbian

昵稱 杜若

@menglihuaxiangbian

Netty源碼-Server啓動流程

Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1、主線程: Netty源碼包的mnetty-example模塊隨便打開一個實現樣例,比如包io.netty.example.echo下的EchoServer,我們從這裏的源碼開始看 Server啓動流程: 創建Selector -》創建ServerSocketChannel -》 初始

menglihuaxiangbian 頭像

@menglihuaxiangbian

昵稱 杜若

@menglihuaxiangbian

Netty源碼-業務流程之寫數據

Netty基本介紹,參考 Netty與網絡編程 1、源碼分析,EchoServerHandler之Write流程 1.1 write流程入口 通常我們通過ChannelRead收到消息後,需要給一個響應,通過ctx.write()將響應返回客户端。 在自定義handler的channelRead方法打一個斷點,客户端發起請求,並進入ctx.write 1.2 AbstractChannelHa

menglihuaxiangbian 頭像

@menglihuaxiangbian

昵稱 杜若

@menglihuaxiangbian

Netty源碼-業務流程之構建連接

Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1、Netty構建連接 構建連接的流程 1.1 我們知道客户端連接服務端都是通過NioEventLoop來處理請求,NioEventLoop是一個線程,連接進來首先進入run()方法。 所以我們需要啓動服務端,然後再啓動客户端發起連接,我們在run()方法打個斷點看一下。 從ru

menglihuaxiangbian 頭像

@menglihuaxiangbian

昵稱 杜若

@menglihuaxiangbian

Netty源碼-業務流程之請求處理

1、業務處理流程 1.1 主從模型 1.2 Debug跟蹤 我們用Netty源碼包下面的example來Debug觀察一下,包路徑io.netty.example.echo NioEventLoop#processSelectedKeysOptimized()方式循環處理不同的事件。如下圖。 NioEventLoop#processSelectedKey方法處理一個事件,在該方法中的un

menglihuaxiangbian 頭像

@menglihuaxiangbian

昵稱 杜若

@bin_60080bc5146e1

談一談 Netty 的內存管理 —— 且看 Netty 如何實現 Java 版的 Jemalloc

本文基於 Netty 4.1.112.Final 版本進行討論 在之前的 Netty 系列中,筆者是以 4.1.56.Final 版本為基礎和大家討論的,那麼從本文開始,筆者將用最新版本 4.1.112.Final 對 Netty 的相關設計展開解析,之所以這麼做的原因是 Netty 的內存池設計一直在不斷地演進優化。 在 4.1.52.Final 之前 Netty 內存池是基於 jemalloc

bin_60080bc5146e1 頭像

@bin_60080bc5146e1

昵稱 bin的技術小屋

@bin_60080bc5146e1

Netty 如何自動探測內存泄露的發生

本文基於 Netty 4.1.112.Final 版本進行討論 本文是 Netty 內存管理系列的最後一篇文章,在第一篇文章 《聊一聊 Netty 數據搬運工 ByteBuf 體系的設計與實現》 中,筆者以 UnpooledByteBuf 為例,從整個內存管理的外圍對 ByteBuf 的整個設計體系進行了詳細的拆解剖析,隨後在第二篇文章 《談一談 Netty 的內存管理 —— 且看 Netty 如

bin_60080bc5146e1 頭像

@bin_60080bc5146e1

昵稱 bin的技術小屋

@bin_60080bc5146e1

時間輪在 Netty , Kafka 中的設計與實現

本文基於 Netty 4.1.112.Final , Kafka 3.9.0 版本進行討論 在業務開發的場景中,我們經常會遇到很多定時任務的需求。比如,生成業務報表,週期性對賬,同步數據,訂單支付超時處理等。針對業務場景中定時任務邏輯複雜,執行時間長的特點,市面上已經有很多成熟的任務調度中間件可供我們選擇。比如:ElasticJob , XXL-JOB , PowerJob 等等。 而在中間件的場

bin_60080bc5146e1 頭像

@bin_60080bc5146e1

昵稱 bin的技術小屋

@xuxueli

XXL-RPC v1.8.1 | RPC服務框架

Release Notes 1、【安全】序列化安全性增強,默認開啓package安全空間機制; 2、【擴展】序列化擴展性增強,支持自定義序列化package白名單; 3、【優化】序列化類型主動檢測,提升問題定位效率; 4、【能力】服務註冊發現實效性提升,優化long-polling邏輯; 5、【擴展】模塊 xxl-rpc-netty-shade 獨立拆分,與Core模塊解耦; 6、【

xuxueli 頭像

@xuxueli

昵稱 xuxueli

@finally_m

2025春招,Netty面試題彙總

大家好,我是 V 哥。2025年春招Java 面試,肯定繞不開 Netty 的相關問題,V哥替大家跟幾位大廠技術主管交流後,整理的一些 2025 年可能會遇到的 Netty 面試題,涵蓋基礎概念、核心組件、性能優化、故障排查等方面,分享給大家,收藏起來備用。 基礎概念類 請簡要介紹一下 Netty 是什麼,以及它的主要應用場景有哪些? 參考答案:Netty 是一個基於 Jav

finally_m 頭像

@finally_m

昵稱 威哥愛編程

@seven97_top

Netty高級使用與源碼詳解

粘包與半包 粘包現象 粘包的問題出現是因為不知道一個用户消息的邊界在哪,如果知道了邊界在哪,接收方就可以通過邊界來劃分出有效的用户消息。 服務端代碼 public class HelloWorldServer { static final Logger log = LoggerFactory.getLogger(HelloWorldServer.class); void start

seven97_top 頭像

@seven97_top

昵稱 程序員Seven

@jackjiang

全面適配iOS 26液態玻璃,基於開源IM即時通訊框架MobileIMSDK:RainbowChat-iOS端v10.2發佈

1、MobileIMSDK開源工程 MobileIMSDK是一套專門為移動端開發的開源IM即時通訊框架,超輕量級、高度提煉,一套API優雅支持UDP、TCP、WebSocket三種協議,支持iOS、Android、H5、小程序、Uniapp、標準Java平台,服務端基於Netty編寫。 工程同步開源地址: ❶GitHub:https://github.com/JackJiang2011/Mo

jackjiang 頭像

@jackjiang

昵稱 JackJiang

@lanyiyun666

藍易雲:GC的前置工作,聊聊GC是如何快速枚舉根節點的

GC 的前置工作:快速而準確的根枚舉是怎麼做到的? ⚡ 在開始標記前,主流運行時都會做一輪“整頓秩序”的前置工作,目標是:以極低停頓時間把 span style="color:red;"GC 根(Roots)/span 找全、找準。根通常來自:線程span style="color:red;"寄存器/span、各線程span style="color:red;"棧幀/span、全局/靜態區、線程本

lanyiyun666 頭像

@lanyiyun666

昵稱 藍易雲

@ivorysql_xiaozhuli

AI時代雲原生數據庫一體機的思考

本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:唐成,中啓乘數科技 CTO,資深 PostgreSQL 專家。 引言 AI 技術正從訓練轉向推理與應用,數據基礎設施面臨新的挑戰。傳統數據庫難以滿足 AI Agent 對實時性、多模態檢索和彈性擴展的需求。PostgreSQL 因其擴展性成為 AI 時代的數據基石,雲原生數據庫一體機通過存算分離

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@ivorysql_xiaozhuli

IvorySQL文檔共建計劃第一期!提 PR,提 Issue,贏取 Beats 耳機、機械鍵盤、書籍等多重好禮!

文檔是開源項目的重要組成部分。結構清晰、內容詳細且準確、易於理解,這樣的文檔可以讓用户更容易理解並上手使用開源項目,在使用的過程中,大部分問題也可以通過閲讀理解文檔來解決。在開源數據庫的世界裏,一份完整、準確的文檔不僅是技術的指南針,更是社區成長的基石。 作為一款基於 PostgreSQL 的開源數據庫,IvorySQL 一直致力於提供更優質的用户體驗。然而,隨着功能的不斷迭代和任務的增多,Ivo

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@starrocks

StarRocks 助力印度領先即時零售平台 Zepto 構建實時洞察能力

導讀: 開源無國界,在本期 “StarRocks 全球用户精選案例” 中,我們走進印度即時零售品牌 Zepto。 這家以 “10 分鐘送達” 聞名的公司,業務已覆蓋 50+ 城市、45,000+ 商品,品類橫跨生鮮雜貨、電子產品、美妝個護、服飾、玩具等。憑藉前沿技術與戰略佈局的前置倉網絡,Zepto 在短短几年間徹底改變了印度的即時零售格局。 隨着規模擴張,Zepto 藉助 StarRo

starrocks 頭像

@starrocks

昵稱 StarRocks

@ivorysql_xiaozhuli

PostgreSQL的邏輯複製spill溢出案例和啓停庫邏輯

本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:劉智龍。 引言 在數據庫運維過程中,停庫與起庫是繞不開的核心環節。然而,在複雜的生產環境中,這些操作並非總能順利完成。以下結合實際案例,對 PostgreSQL 在停庫和起庫過程中可能遇到的典型問題進行技術剖析。 WALsender、archiver 如何優雅阻止停庫 WALsender 阻止停

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@chunzhendegaoshan

PostgreSQL的數據集成之路:ETL+CDC實現實時多源聚合

在企業數據架構中,PostgreSQL憑藉其強大的擴展性、事務一致性以及對JSON、GIS、時序數據的原生支持,已成為常見的開源數據庫之一。然而,真正的挑戰並非PostgreSQL本身的性能,而是如何高效、實時地將MySQL、TiDB、SQL Server、API等多源數據聚合到PostgreSQL中,構建統一、可信、可分析的數據資產。ETLCloud通過"ETL+CDC(Change Data

chunzhendegaoshan 頭像

@chunzhendegaoshan

昵稱 RestCloud

@ivorysql_xiaozhuli

直播預告|PostgreSQL 18 六大新特性深度解析

PostgreSQL 18 已於 9 月 25 日正式發佈。該版本包含大量改進,其中有多項新特性。在 PostgreSQL 18 發佈後,IvorySQL 社區推出了一篇六大新特性解讀的文章聚焦六大功能:PostgreSQL 18 新特性深度解析,引發了多人關注。 本次直播,我們邀請到了本文的六位作者,為大家深度解析每一個功能的變化。同時,我們特別邀請了彭衝老師擔任本次直播的主持人。 觀看直播即有

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@ivorysql_xiaozhuli

IvorySQL 亮相第 27 屆中國國際軟件博覽會:開源創新,共築軟件新生態

2025 年 10 月 15 日至 17 日,第 27 屆中國國際軟件博覽會(簡稱軟博會)將在鄭州國際會展中心盛大舉辦。作為我國軟件和信息技術服務領域規模最大、影響力最強的專業盛會,軟博會已成功舉辦 26 屆,歷來備受國家和社會各界高度關注。本屆軟博會以“開源構築新生態,軟件智造新未來”為主題,聚焦 AI 重塑軟件、軟件定義未來、工業軟件創新發展、開源鴻蒙生態體系建設等前沿領域,匯聚基礎軟件、工業

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@ivorysql_xiaozhuli

直播回顧|PostgreSQL 18 六大新特性深度解析

10 月 16 日,IvorySQL 社區組織了一場線上直播,主題為:PostgreSQL 18 六大新特性深度解析。以下為本場直播的回顧。 嘉賓簡介 王世鑫,數據庫軟件工程師 張虎,數據庫軟件工程師 權宗亮,數據庫軟件工程師 蘭柯,數據庫軟件工程師 史躍飛,數據庫軟件工程師 胡勳棋,數據庫軟件工程師 矯順田,數據庫軟件工程師 特邀主持人:彭衝,PostgreSQL ACE,Po

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@ivorysql_xiaozhuli

在一台機器上搭建一體化 Ceph 存儲集羣

概述 Ceph 是一個開源的軟件定義存儲平台,它在單個分佈式計算機集羣上實現對象存儲,並提供對象級、塊級和文件級存儲的三合一接口。Ceph 存儲集羣由 Ceph 監視器、Ceph 管理器、Ceph 元數據服務器和 OSD 組成,它們協同工作來存儲和複製數據,供應用程序、Ceph 用户和 Ceph 客户端使用。Ceph 還提供了使用 PostgreSQL 來利用網絡存儲的選項。 在這篇文章中,我將指

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL

@zhuifengdekukafei

跨境業務 OV 證書價值拆解手冊

第一章 多國合規適配對照表(核心痛點解決工具) 1.1 主流跨境市場合規要求與 OV 證書對應表 目標市場 核心合規法規 法規對企業的硬性要求 OV 證書的 “通關作用” 歐盟 27 國 GDPR(通用數據保護條例) 1. 用户數據傳輸需加密;2. 企業身份需向用户透明;3. 違規最高罰全球營收 4% 1. 256 位

zhuifengdekukafei 頭像

@zhuifengdekukafei

昵稱 追風的苦咖啡

@ivorysql_xiaozhuli

災難恢復工具內核細節探究與分享

本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:張晨,公眾號《ZhangChen-PDU》主理人。 前言 在數據庫運維中,災難恢復始終是保障業務連續性和系統可靠性的核心環節。隨着數據庫規模和複雜性的增加,傳統工具在極端場景下的侷限性愈發明顯,因此需要更專業、高效的解決方案來應對數據損壞或不可啓動的情況。 PDU 的快速介紹 在數據庫運維場景中

ivorysql_xiaozhuli 頭像

@ivorysql_xiaozhuli

昵稱 IvorySQL