Netty源碼-業務流程之讀事件
Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1 Netty讀事件 1.1 READ事件,NioEventLoop#processSelectedKey在第二次循環的時候就是讀事件 現在unsafe類不一樣,NioSocketChannel$NioSocketChannelUnsafe類,進入Read方法,我們進入了Abstarc
昵稱 杜若
Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1 Netty讀事件 1.1 READ事件,NioEventLoop#processSelectedKey在第二次循環的時候就是讀事件 現在unsafe類不一樣,NioSocketChannel$NioSocketChannelUnsafe類,進入Read方法,我們進入了Abstarc
昵稱 杜若
Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1、主線程: Netty源碼包的mnetty-example模塊隨便打開一個實現樣例,比如包io.netty.example.echo下的EchoServer,我們從這裏的源碼開始看 Server啓動流程: 創建Selector -》創建ServerSocketChannel -》 初始
昵稱 杜若
Netty基本介紹,參考 Netty與網絡編程 1、源碼分析,EchoServerHandler之Write流程 1.1 write流程入口 通常我們通過ChannelRead收到消息後,需要給一個響應,通過ctx.write()將響應返回客户端。 在自定義handler的channelRead方法打一個斷點,客户端發起請求,並進入ctx.write 1.2 AbstractChannelHa
昵稱 杜若
Netty基本介紹,參考 https://juejin.cn/post/7408844429370834954 1、Netty構建連接 構建連接的流程 1.1 我們知道客户端連接服務端都是通過NioEventLoop來處理請求,NioEventLoop是一個線程,連接進來首先進入run()方法。 所以我們需要啓動服務端,然後再啓動客户端發起連接,我們在run()方法打個斷點看一下。 從ru
昵稱 杜若
1、業務處理流程 1.1 主從模型 1.2 Debug跟蹤 我們用Netty源碼包下面的example來Debug觀察一下,包路徑io.netty.example.echo NioEventLoop#processSelectedKeysOptimized()方式循環處理不同的事件。如下圖。 NioEventLoop#processSelectedKey方法處理一個事件,在該方法中的un
昵稱 杜若
本文基於 Netty 4.1.112.Final 版本進行討論 在之前的 Netty 系列中,筆者是以 4.1.56.Final 版本為基礎和大家討論的,那麼從本文開始,筆者將用最新版本 4.1.112.Final 對 Netty 的相關設計展開解析,之所以這麼做的原因是 Netty 的內存池設計一直在不斷地演進優化。 在 4.1.52.Final 之前 Netty 內存池是基於 jemalloc
昵稱 bin的技術小屋
本文基於 Netty 4.1.112.Final 版本進行討論 本文是 Netty 內存管理系列的最後一篇文章,在第一篇文章 《聊一聊 Netty 數據搬運工 ByteBuf 體系的設計與實現》 中,筆者以 UnpooledByteBuf 為例,從整個內存管理的外圍對 ByteBuf 的整個設計體系進行了詳細的拆解剖析,隨後在第二篇文章 《談一談 Netty 的內存管理 —— 且看 Netty 如
昵稱 bin的技術小屋
本文基於 Netty 4.1.112.Final , Kafka 3.9.0 版本進行討論 在業務開發的場景中,我們經常會遇到很多定時任務的需求。比如,生成業務報表,週期性對賬,同步數據,訂單支付超時處理等。針對業務場景中定時任務邏輯複雜,執行時間長的特點,市面上已經有很多成熟的任務調度中間件可供我們選擇。比如:ElasticJob , XXL-JOB , PowerJob 等等。 而在中間件的場
昵稱 bin的技術小屋
Release Notes 1、【安全】序列化安全性增強,默認開啓package安全空間機制; 2、【擴展】序列化擴展性增強,支持自定義序列化package白名單; 3、【優化】序列化類型主動檢測,提升問題定位效率; 4、【能力】服務註冊發現實效性提升,優化long-polling邏輯; 5、【擴展】模塊 xxl-rpc-netty-shade 獨立拆分,與Core模塊解耦; 6、【
昵稱 xuxueli
大家好,我是 V 哥。2025年春招Java 面試,肯定繞不開 Netty 的相關問題,V哥替大家跟幾位大廠技術主管交流後,整理的一些 2025 年可能會遇到的 Netty 面試題,涵蓋基礎概念、核心組件、性能優化、故障排查等方面,分享給大家,收藏起來備用。 基礎概念類 請簡要介紹一下 Netty 是什麼,以及它的主要應用場景有哪些? 參考答案:Netty 是一個基於 Jav
昵稱 威哥愛編程
粘包與半包 粘包現象 粘包的問題出現是因為不知道一個用户消息的邊界在哪,如果知道了邊界在哪,接收方就可以通過邊界來劃分出有效的用户消息。 服務端代碼 public class HelloWorldServer { static final Logger log = LoggerFactory.getLogger(HelloWorldServer.class); void start
昵稱 程序員Seven
1、MobileIMSDK開源工程 MobileIMSDK是一套專門為移動端開發的開源IM即時通訊框架,超輕量級、高度提煉,一套API優雅支持UDP、TCP、WebSocket三種協議,支持iOS、Android、H5、小程序、Uniapp、標準Java平台,服務端基於Netty編寫。 工程同步開源地址: ❶GitHub:https://github.com/JackJiang2011/Mo
昵稱 JackJiang
GC 的前置工作:快速而準確的根枚舉是怎麼做到的? ⚡ 在開始標記前,主流運行時都會做一輪“整頓秩序”的前置工作,目標是:以極低停頓時間把 span style="color:red;"GC 根(Roots)/span 找全、找準。根通常來自:線程span style="color:red;"寄存器/span、各線程span style="color:red;"棧幀/span、全局/靜態區、線程本
昵稱 藍易雲
本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:唐成,中啓乘數科技 CTO,資深 PostgreSQL 專家。 引言 AI 技術正從訓練轉向推理與應用,數據基礎設施面臨新的挑戰。傳統數據庫難以滿足 AI Agent 對實時性、多模態檢索和彈性擴展的需求。PostgreSQL 因其擴展性成為 AI 時代的數據基石,雲原生數據庫一體機通過存算分離
昵稱 IvorySQL
文檔是開源項目的重要組成部分。結構清晰、內容詳細且準確、易於理解,這樣的文檔可以讓用户更容易理解並上手使用開源項目,在使用的過程中,大部分問題也可以通過閲讀理解文檔來解決。在開源數據庫的世界裏,一份完整、準確的文檔不僅是技術的指南針,更是社區成長的基石。 作為一款基於 PostgreSQL 的開源數據庫,IvorySQL 一直致力於提供更優質的用户體驗。然而,隨着功能的不斷迭代和任務的增多,Ivo
昵稱 IvorySQL
導讀: 開源無國界,在本期 “StarRocks 全球用户精選案例” 中,我們走進印度即時零售品牌 Zepto。 這家以 “10 分鐘送達” 聞名的公司,業務已覆蓋 50+ 城市、45,000+ 商品,品類橫跨生鮮雜貨、電子產品、美妝個護、服飾、玩具等。憑藉前沿技術與戰略佈局的前置倉網絡,Zepto 在短短几年間徹底改變了印度的即時零售格局。 隨着規模擴張,Zepto 藉助 StarRo
昵稱 StarRocks
本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:劉智龍。 引言 在數據庫運維過程中,停庫與起庫是繞不開的核心環節。然而,在複雜的生產環境中,這些操作並非總能順利完成。以下結合實際案例,對 PostgreSQL 在停庫和起庫過程中可能遇到的典型問題進行技術剖析。 WALsender、archiver 如何優雅阻止停庫 WALsender 阻止停
昵稱 IvorySQL
在企業數據架構中,PostgreSQL憑藉其強大的擴展性、事務一致性以及對JSON、GIS、時序數據的原生支持,已成為常見的開源數據庫之一。然而,真正的挑戰並非PostgreSQL本身的性能,而是如何高效、實時地將MySQL、TiDB、SQL Server、API等多源數據聚合到PostgreSQL中,構建統一、可信、可分析的數據資產。ETLCloud通過"ETL+CDC(Change Data
昵稱 RestCloud
PostgreSQL 18 已於 9 月 25 日正式發佈。該版本包含大量改進,其中有多項新特性。在 PostgreSQL 18 發佈後,IvorySQL 社區推出了一篇六大新特性解讀的文章聚焦六大功能:PostgreSQL 18 新特性深度解析,引發了多人關注。 本次直播,我們邀請到了本文的六位作者,為大家深度解析每一個功能的變化。同時,我們特別邀請了彭衝老師擔任本次直播的主持人。 觀看直播即有
昵稱 IvorySQL
2025 年 10 月 15 日至 17 日,第 27 屆中國國際軟件博覽會(簡稱軟博會)將在鄭州國際會展中心盛大舉辦。作為我國軟件和信息技術服務領域規模最大、影響力最強的專業盛會,軟博會已成功舉辦 26 屆,歷來備受國家和社會各界高度關注。本屆軟博會以“開源構築新生態,軟件智造新未來”為主題,聚焦 AI 重塑軟件、軟件定義未來、工業軟件創新發展、開源鴻蒙生態體系建設等前沿領域,匯聚基礎軟件、工業
昵稱 IvorySQL
10 月 16 日,IvorySQL 社區組織了一場線上直播,主題為:PostgreSQL 18 六大新特性深度解析。以下為本場直播的回顧。 嘉賓簡介 王世鑫,數據庫軟件工程師 張虎,數據庫軟件工程師 權宗亮,數據庫軟件工程師 蘭柯,數據庫軟件工程師 史躍飛,數據庫軟件工程師 胡勳棋,數據庫軟件工程師 矯順田,數據庫軟件工程師 特邀主持人:彭衝,PostgreSQL ACE,Po
昵稱 IvorySQL
概述 Ceph 是一個開源的軟件定義存儲平台,它在單個分佈式計算機集羣上實現對象存儲,並提供對象級、塊級和文件級存儲的三合一接口。Ceph 存儲集羣由 Ceph 監視器、Ceph 管理器、Ceph 元數據服務器和 OSD 組成,它們協同工作來存儲和複製數據,供應用程序、Ceph 用户和 Ceph 客户端使用。Ceph 還提供了使用 PostgreSQL 來利用網絡存儲的選項。 在這篇文章中,我將指
昵稱 IvorySQL
第一章 多國合規適配對照表(核心痛點解決工具) 1.1 主流跨境市場合規要求與 OV 證書對應表 目標市場 核心合規法規 法規對企業的硬性要求 OV 證書的 “通關作用” 歐盟 27 國 GDPR(通用數據保護條例) 1. 用户數據傳輸需加密;2. 企業身份需向用户透明;3. 違規最高罰全球營收 4% 1. 256 位
昵稱 追風的苦咖啡
本文整理自 IvorySQL 2025 生態大會暨 PostgreSQL 高峯論壇的演講分享,演講嘉賓:張晨,公眾號《ZhangChen-PDU》主理人。 前言 在數據庫運維中,災難恢復始終是保障業務連續性和系統可靠性的核心環節。隨着數據庫規模和複雜性的增加,傳統工具在極端場景下的侷限性愈發明顯,因此需要更專業、高效的解決方案來應對數據損壞或不可啓動的情況。 PDU 的快速介紹 在數據庫運維場景中
昵稱 IvorySQL