Netty源码全解与架构思维
新华书店全新正版,极速发货,假一罚十,可开电子发票,请放心购买。
¥
82.07
6.4折
¥
128
全新
库存2件
作者黄俊
出版社清华大学出版社
ISBN9787302624981
出版时间2023-01
装帧平装
开本16开
定价128元
货号1202814614
上书时间2024-10-12
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
作者简介
黄俊
专注于研究Java语言
专注于研究Hotspot
专注于研究Linux内核
专注于研究C语言与汇编
专注于研究架构设计
专注于研究多线程并发处理
专注于研究高效学习方式
曾就职于美团、阿里
前新东方业务架构师
目录
第1篇Netty世界漫游与Java网络编程回顾
第1章Java网络编程
1.1Socket介绍
1.2Socket编程
1.2.1Java客户端编程
1.2.2Java服务端编程
1.2.3C语言服务端编程
1.3BIO编程
1.4NIO编程
1.4.1NIO模型原理
1.4.2Buffer原理
1.4.3Channel原理
1.4.4Selector原理
1.5AIO编程38
1.5.1JavaAIO描述
1.5.2JavaAIO实例
1.5.3AsynchronousServerSocketChannel.open()原理
1.5.4AsynchronousServerSocketChannel.bind()原理52
1.5.5ServerSocketChannel.accept(null,new AcceptHandler())原理
1.5.6socketChannel.read(byteBuffer,byteBuffer,new ReadHandler())原理
1.5.7Linux服务端网络编程
1.5.8Linux客户端网络编程
1.5.9Java AIO涉及的NativeJNI实现
第2章mmap网络编程与sendfile原理
2.1transferTo方法
2.1.1transferTo方法定义
2.1.2transferTo方法实现原理
2.1.3transferToDirectly方法
2.1.4transferToTrustedChannel方法
2.1.5transferToArbitraryChannel方法
2.2JVM层面零复制原理
2.2.1transferToO方法
2.2.2mapO方法
2.3sendfile方法
第3章Linuxepoll实现原理
3.1三大函数原型
3.2epollevent与epolldata对象
3.3边缘触发与水平触发
3.4使用示例
3.5三大函数内核原理
第4章Netty架构与源码组成
4.1Netty是什么
4.2Netty架构组成
4.3Netty三大基础模块
4.3.1事件循环模块
4.3.2内存池模块
4.3.3通道处理器模块
4.4Netty源码组成
第2篇事件驱动层
第5章JDKExecutor原理
5.1Executor接口
5.2ExecutorService接口
5.3AbstractExecutorService抽象类
5.4ScheduledExecutorService接口
第6章EventExecutor与EventExecutorGroup原理
6.1EventExecutorGroup类
6.2EventExecutor接口
6.3AbstractEventExecutorGroup方法
6.4MultithreadEventExecutorGroup类
6.4.1核心变量与构造器
6.4.2EventExecutorChooserFactory与DefaultEventExecutorChooserFactory
6.4.3ThreadPerTaskExecutor类
6.4.4DefaultThreadFactory类
6.4.5FastThreadLocalThread类
6.4.6FastThreadLocal类
6.4.7shutdownGracefully方法
6.4.8awaitTermination方法
6.5DefaultEventExecutorGroup类
6.6AbstractEventExecutor类
6.7AbstractScheduledEventExecutor方法
6.8SingleThreadEventExecutor类
6.8.1核心变量与构造器
6.8.2execute核心方法实现
6.8.3addTask核心方法
6.8.4startThread核心方法
6.8.5confirmShutdown核心方法
6.8.6nmAllTasks核心方法
6.8.7runShutdownHooks核心方法
6.8.8awaitTerminatkm核心方法
6.8.9takeTask核心方法
6.8.10shutdownGracefully核心方法
6.9DefaultEventExecutor
第7章EventLoop与EventLoopGroup原理
7.1EventLoopGroup接口与EventLoop接口
7.1.1EventLoopGroup接口
7.1.2EventLoop接口
7.2MultithreadEventLoopGroup原理
7.3DefaultEventLoopGroup原理
7.4NioEventLoopGroup类
7.5ThreadPerChannelEventLoopGroup原理
7.5.1核心变量与构造器
7.5.2newChild核心方法
7.5.3next核心方法
7.5.4shutdownGracefully核心方法
7.5.5awaitTermination核心方法
7.5.6register核心方法
7.5.7nextChild核心方法
7.6OioEventLoopGroup类
7.7SingleThreadEventLoop原理
7.7.1核心变量与构造器
7.7.2next核心方法
7.7.3executeAfterEventLoopIteration核心方法
7.7.4afterRunningAllTasks核心方法
7.7.5register核心方法
7.7.6hasTasks核心方法
7.7.7pendingTasks核心方法
7.8NioEventLoop
7.8.1核心变量与构造器
7.8.2run核心方法
7.8.3select核心方法
7.8.4rebuildSelector核心方法
7.8.5processSelectedKeys核心方法
7.8.6processSelectedKey核心频道方法
7.8.7processSelectedKey核心任务方法
7.9ThreadPerChannelEventLoop类
第8章Future与Promise原理
8.1Future接口
8.2GenericFutureListener与FutureListener接口
821GenericFutureListener接口
8.2.2FutureListener接口
8.3AbstractFuture接口
8.4ChannelGroupFuture接口
8.5GenericProgressiveFutureListener监听器
8.6ChannelFuture接口
8.7Promise接口
8.8DefaultPromise接口
8.8.1核心变量与构造器
8.8.2await核心方法
8.8.3awaitUninterruptibly核心方法
8.8.4cancel核心方法
8.8.5sync核心方法
8.8.6syncUninterruptibly核心方法
8.8.7setSuccess核心方法
8.8.8setFailure核心方法
8.8.9trySuccess核心方法
8.8.10tryFailure核,山方法
8.8.11addListener核心方法
8.8.12notifyListeners核心方法
8.8.13notifyListenersNow核心方法
8.8.14notifyListenersO核心方法
8.8.15notifyProgressiveListeners核心方法
8.8.16progressiveListeners核心方法
8.8.17notifyProgressiveListener核心方法
8.9ChannelPromise接口
8.9.1DefaultChannelPromise类
8.9.2DefaultChannelGroupFuture类
第3篇内存管理层
第9章ByteBuf与衍生类原理
9.1ByteBuf原理
9.1.1构造器与核心变量
9.1.2ReferenceCounted接口
9.2AbstractByteBuf原理
921核心变量与构造器
9.2.2writeByte核心方法
9.2.3writeBytes核心方法
9.2.4readByte核心方法
9.2.5readBytes核心方法
9.2.6writeZero核心方法
9.2.7discardReadBytes核心方法
9.3AbstractReferenceCountedByteBuf类
9.4UnpooledHeapByteBuf类
9.4.1核心变量与构造器
942getByte核心方法
943getBytes核心方法
9.4.4setByte核心方法
9.4.5setBytes核心方法
9.4.6setShort核心方法
9.4.7capacity核心方法
9.4.8nioBuffer核心方法
9.5UnpooledUnsafeHeapByteBuf类
9.6UnpooledDirectByteBuf原理
9.6.1核心变量与构造器
9.6.2setByte核心方法
9.6.3setBytes核心方法
9.6.4getByte核心方法
9.6.5getBytes核心方法
9.6.6capacity核心方法
9.6.7freeDirect核心方法
9.7UnpooledUnsafeDirectByteBuf方法
9.8UnpooledUnsafeNoCleanerDirectByteBuf类
9.9PooledByteBuf原理
9.9.1init核心方法
9.9.2initUnpooled核心方法
9.9.3reuse核心方法
9.9.4capacity核方法
9.9.5deallocate核心方法
996recycle核心方法
第10章Netty对象池原理
10.1Recycler原理
10.1.1核心构造器与变量
10.1.2Handle核心接口
10.1.3Stack核心类
10.1.4WeakOrderQueue核心类
10.2PooledHeapByteBuf原理
10.3PooledUnsafeHeapByteBuf类
10.4PooledDirectByteBuf类
10.5CompositeByteBuf原理
10.5.1核心变量与构造器
10.5.2addComponents核心方法
10.5.3addComponent核心方法
10.5.4removeComponent核心方法
10.5.5removeComponents核心方法
10.5.6capacity核心方法
10.5.7decompose核心方法
10.5.8findComponent核心方法
10.5.9getByte核心方法
10.5.10setByte核心方法
10.6WrappedByteBuf类
10.7SimpleLeakAwareByteBuf类
10.8AdvancedLeakAwareByteBuf类
10.9WrappedCompositeByteBuf类
10.10SimpleLeakAwareCompositeByteBuf类
10.11AdvancedLeakAwareCompositeByteBuf类
10.12ResourceLeak接口
10.13ResourceLeakDetector类
10.13.1核心变量与构造器
10.13.2newRecord核方法
10.13.3open核心方法
10.13.4reportLeak核心方法
10.13.5reportXLeak核心方法
内容摘要
Netty是目前市面上使用率较高的网络编程库。它的架构设计非常明确且层次分明,源码较为易懂,其中包装了JavaNIO(NewIO,新IO)的三大组件:Selector、Channel、ByteBuffer,提供了简单易用高效的网络通信库,其中还实现了自己的内存池管理。Netty的设计基于Jemalloc内存管理库,同时也实现了很多开封即用的应用层协议编码与解码器。本书通过常用的TCP协议完整诠释了Netty的架构设计与思想,省略了Java语言层面的一些基础知识,例如变量、面向对象、泛型等JavaSE的基础。本书适用于以下读者:希望进入互联网公司工作的读者、研究Netty底层知识的读者、在工作中遇见瓶颈,希望通过学习Netty提升底层知识的读者、从事开发高并发支撑中间件的读者、从事互联网高并发业务支撑的读者、对多线程编程感兴趣的读者、希望通过Netty源码找到调优点的读者。
主编推荐
Netty 是一个基于 Java 的高性能网络应用程序框架,用于快速开发可维护的高性能网络应用程序。它旨在提供易于使用、高度可扩展的 API,同时提供开箱即用的异步、事件驱动的网络编程模型。Netty 的设计使其非常适合用于实现各种协议或应用程序,从简单的客户端到高性能服务器。
Netty 提供了一个简单但强大的对象,称为“通道”(Channel)。它提供了一种方便的方法来表示网络连接,这使得网络应用程序的开发变得更加容易。Netty 还提供了一套灵活的处理器(Handler)框架,使得可以将业务逻辑从网络层解耦出来,并且支持高度定制的处理器链,以满足各种需求。此外,Netty 还提供了一组高性能的编解码器,用于方便地处理各种数据格式和协议。
总的来说,如果你正在开发网络应用程序并寻找一种高性能、易于使用、可扩展的框架,那么 Netty 将是一个非常好的选择。
— 没有更多了 —
以下为对购买帮助不大的评价