Netty、Redis、Zookeeper高并发实战
目 录内容简介
前言
第1章 高并发时代的***技能1
1.1 Netty为何这么火1
1.1.1 Netty火热的程度1
1.1.2 Netty是面试的必杀器2
1.2 高并发利器Redis2
1.2.1 什么是Redis2
1.2.2 Redis成为缓存事实标准的原因3
1.3 分布式利器ZooKeeper3
1.3.1 什么是ZooKeeper3
查看完整
第1章 高并发时代的***技能1
1.1 Netty为何这么火1
1.1.1 Netty火热的程度1
1.1.2 Netty是面试的必杀器2
1.2 高并发利器Redis2
1.2.1 什么是Redis2
1.2.2 Redis成为缓存事实标准的原因3
1.3 分布式利器ZooKeeper3
1.3.1 什么是ZooKeeper3
查看完整
目 录内容简介
本书为了让读者扎稳高性能基础,浅显易懂地剖析高并发IO的底层原理,细致细腻地解析Reactor高性能模式,图文并茂地介绍Java异步回调模式。掌握这些基础原理,能够帮助读者解决Java后台开发的一些实际问题。
本书共12章,主要介绍高性能通信框架Netty,并详尽介绍Netty的EventLoop、Handler、Pipeline、ByteBuf、Decoder、Encoder等重要组件,然后介绍单体IM的实战设计和模块实现。本书对ZooKeeper、 Curator API、Redis、Jedis API的使用也进行详尽的介绍,让读者具备高并发、可扩展系统的设计和开发能力。
本书共12章,主要介绍高性能通信框架Netty,并详尽介绍Netty的EventLoop、Handler、Pipeline、ByteBuf、Decoder、Encoder等重要组件,然后介绍单体IM的实战设计和模块实现。本书对ZooKeeper、 Curator API、Redis、Jedis API的使用也进行详尽的介绍,让读者具备高并发、可扩展系统的设计和开发能力。
目 录内容简介
前言
第1章 高并发时代的***技能1
1.1 Netty为何这么火1
1.1.1 Netty火热的程度1
1.1.2 Netty是面试的必杀器2
1.2 高并发利器Redis2
1.2.1 什么是Redis2
1.2.2 Redis成为缓存事实标准的原因3
1.3 分布式利器ZooKeeper3
1.3.1 什么是ZooKeeper3
1.3.2 ZooKeeper的优势4
1.4 高并发IM的综合实践4
1.4.1 高并发IM的学习价值4
1.4.2 庞大的应用场景5
1.5 Netty、Redis、ZooKeeper实践计划5
1.5.1 第1天:Java NIO实践5
1.5.2 第2天:Reactor反应器模式实践6
1.5.3 第3天:异步回调模式实践7
1.5.4 第4天:Netty基础实践8
1.5.5 第5天:解码器(Decoder)与编码器(Encoder)实践9
1.5.6 第6天:JSON和ProtoBuf序列化实践11
1.5.7 第7~10天:基于Netty的单聊实战12
1.5.8 第11天:ZooKeeper实践计划14
1.5.9 第12天:Redis实践计划14
1.6 本章小结16
第2章 高并发IO的底层原理17
2.1 IO读写的基础原理17
2.1.1 内核缓冲区与进程缓冲区18
2.1.2 详解典型的系统调用流程18
2.2 四种主要的IO模型19
2.2.1 同步阻塞IO(Blocking IO)20
2.2.2 同步非阻塞NIO(None Blocking IO)21
2.2.3 IO多路复用模型(IO Multiplexing)22
2.2.4 异步IO模型(Asynchronous IO)23
2.3 通过合理配置来支持百万级并发连接24
2.4 本章小结26
第3章 Java NIO通信基础详解27
3.1 Java NIO简介27
3.1.1 NIO和OIO的对比28
3.1.2 通道(Channel)28
3.1.3 Selector 选择器28
3.1.4 缓冲区(Buffer)29
3.2 详解NIO Buffer类及其属性29
3.2.1 Buffer类29
3.2.2 Buffer类的重要属性29
3.2.3 4个属性的小结31
3.3 详解NIO Buffer类的重要方法31
3.3.1 allocate()创建缓冲区31
3.3.2 put()写入到缓冲区32
3.3.3 flip()翻转33
3.3.4 get()从缓冲区读取34
3.3.5 rewind()倒带35
3.3.6 mark( )和reset( )37
3.3.7 clear( )清空缓冲区38
3.3.8 使用Buffer类的基本步骤38
3.4 详解NIO Channel(通道)类38
3.4.1 Channel(通道)的主要类型39
3.4.2 FileChannel文件通道39
3.4.3 使用FileChannel完成文件复制的实践案例41
3.4.4 SocketChannel套接字通道42
3.4.5 使用SocketChannel发送文件的实践案例44
3.4.6 DatagramChannel数据报通道46
3.4.7 使用DatagramChannel数据包通道发送数据的实践案例47
3.5 详解NIO Selector选择器49
3.5.1 选择器以及注册49
3.5.2 SelectableChannel可选择通道50
3.5.3 SelectionKey选择键50
3.5.4 选择器使用流程50
3.5.5 使用NIO实现Discard服务器的实践案例52
3.5.6 使用SocketChannel在服务器端接收文件的实践案例54
3.6 本章小结57
第4章 鼎鼎大名的Reactor反应器模式59
4.1 Reactor反应器模式为何如此重要59
4.1.1 为什么首先学习Reactor反应器模式59
4.1.2 Reactor反应器模式简介60
4.1.3 多线程OIO的致命缺陷60
4.2 单线程Reactor反应器模式62
4.2.1 什么是单线程Reactor反应器62
4.2.2 单线程Reactor反应器的参考代码63
4.2.3 一个Reactor反应器版本的EchoServer实践案例65
4.2.4 单线程Reactor反应器模式的缺点67
4.3 多线程的Reactor反应器模式68
4.3.1 多线程池Reactor反应器演进68
4.3.2 多线程Reactor 反应器的实践案例68
4.3.3 多线程Handler处理器的实践案例70
4.4 Reactor反应器模式小结72
4.5 本章小结73
第5章 并发基础中的Future异步回调模式74
5.1 从泡茶的案例说起74
5.2 join异步阻塞75
5.2.1 线程的join合并流程75
5.2.2 使用join实现异步泡茶喝的实践案例75
5.2.3 详解join合并方法77
5.3 FutureTask异步回调之重武器77
5.3.1 Callable接口77
5.3.2 初探FutureTask类78
5.3.3 Future接口79
5.3.4 再探FutureTask类79
5.3.5 使用FutureTask类实现异步泡茶喝的实践案例80
5.4 Guava的异步回调82
5.4.1 详解FutureCallback82
5.4.2 详解ListenableFuture83
5.4.3 ListenableFuture异步任务84
5.4.4 使用Guava实现泡茶喝的实践案例84
5.5 Netty的异步回调模式87
5.5.1 详解GenericFutureListener接口87
5.5.2 详解Netty的Future接口88
5.5.3 ChannelFuture的使用88
5.5.4 Netty的出站和入站异步回调89
5.6 本章小结90
第6章 Netty原理与基础91
6.1 个Netty的实践案例DiscardServer91
6.1.1 创建个Netty项目91
6.1.2 个Netty服务器端程序92
6.1.3 业务处理器NettyDiscardHandler93
6.1.4 运行NettyDiscardServer94
6.2 解密Netty中的Reactor反应器模式95
6.2.1 回顾Reactor反应器模式中IO事件的处理流程95
6.2.2 Netty中的Channel通道组件96
6.2.3 Netty中的Reactor 反应器96
6.2.4 Netty中的Handler处理器97
6.2.5 Netty的流水线(Pipeline)98
6.3 详解Bootstrap启动器类100
6.3.1
^ 收 起
第1章 高并发时代的***技能1
1.1 Netty为何这么火1
1.1.1 Netty火热的程度1
1.1.2 Netty是面试的必杀器2
1.2 高并发利器Redis2
1.2.1 什么是Redis2
1.2.2 Redis成为缓存事实标准的原因3
1.3 分布式利器ZooKeeper3
1.3.1 什么是ZooKeeper3
1.3.2 ZooKeeper的优势4
1.4 高并发IM的综合实践4
1.4.1 高并发IM的学习价值4
1.4.2 庞大的应用场景5
1.5 Netty、Redis、ZooKeeper实践计划5
1.5.1 第1天:Java NIO实践5
1.5.2 第2天:Reactor反应器模式实践6
1.5.3 第3天:异步回调模式实践7
1.5.4 第4天:Netty基础实践8
1.5.5 第5天:解码器(Decoder)与编码器(Encoder)实践9
1.5.6 第6天:JSON和ProtoBuf序列化实践11
1.5.7 第7~10天:基于Netty的单聊实战12
1.5.8 第11天:ZooKeeper实践计划14
1.5.9 第12天:Redis实践计划14
1.6 本章小结16
第2章 高并发IO的底层原理17
2.1 IO读写的基础原理17
2.1.1 内核缓冲区与进程缓冲区18
2.1.2 详解典型的系统调用流程18
2.2 四种主要的IO模型19
2.2.1 同步阻塞IO(Blocking IO)20
2.2.2 同步非阻塞NIO(None Blocking IO)21
2.2.3 IO多路复用模型(IO Multiplexing)22
2.2.4 异步IO模型(Asynchronous IO)23
2.3 通过合理配置来支持百万级并发连接24
2.4 本章小结26
第3章 Java NIO通信基础详解27
3.1 Java NIO简介27
3.1.1 NIO和OIO的对比28
3.1.2 通道(Channel)28
3.1.3 Selector 选择器28
3.1.4 缓冲区(Buffer)29
3.2 详解NIO Buffer类及其属性29
3.2.1 Buffer类29
3.2.2 Buffer类的重要属性29
3.2.3 4个属性的小结31
3.3 详解NIO Buffer类的重要方法31
3.3.1 allocate()创建缓冲区31
3.3.2 put()写入到缓冲区32
3.3.3 flip()翻转33
3.3.4 get()从缓冲区读取34
3.3.5 rewind()倒带35
3.3.6 mark( )和reset( )37
3.3.7 clear( )清空缓冲区38
3.3.8 使用Buffer类的基本步骤38
3.4 详解NIO Channel(通道)类38
3.4.1 Channel(通道)的主要类型39
3.4.2 FileChannel文件通道39
3.4.3 使用FileChannel完成文件复制的实践案例41
3.4.4 SocketChannel套接字通道42
3.4.5 使用SocketChannel发送文件的实践案例44
3.4.6 DatagramChannel数据报通道46
3.4.7 使用DatagramChannel数据包通道发送数据的实践案例47
3.5 详解NIO Selector选择器49
3.5.1 选择器以及注册49
3.5.2 SelectableChannel可选择通道50
3.5.3 SelectionKey选择键50
3.5.4 选择器使用流程50
3.5.5 使用NIO实现Discard服务器的实践案例52
3.5.6 使用SocketChannel在服务器端接收文件的实践案例54
3.6 本章小结57
第4章 鼎鼎大名的Reactor反应器模式59
4.1 Reactor反应器模式为何如此重要59
4.1.1 为什么首先学习Reactor反应器模式59
4.1.2 Reactor反应器模式简介60
4.1.3 多线程OIO的致命缺陷60
4.2 单线程Reactor反应器模式62
4.2.1 什么是单线程Reactor反应器62
4.2.2 单线程Reactor反应器的参考代码63
4.2.3 一个Reactor反应器版本的EchoServer实践案例65
4.2.4 单线程Reactor反应器模式的缺点67
4.3 多线程的Reactor反应器模式68
4.3.1 多线程池Reactor反应器演进68
4.3.2 多线程Reactor 反应器的实践案例68
4.3.3 多线程Handler处理器的实践案例70
4.4 Reactor反应器模式小结72
4.5 本章小结73
第5章 并发基础中的Future异步回调模式74
5.1 从泡茶的案例说起74
5.2 join异步阻塞75
5.2.1 线程的join合并流程75
5.2.2 使用join实现异步泡茶喝的实践案例75
5.2.3 详解join合并方法77
5.3 FutureTask异步回调之重武器77
5.3.1 Callable接口77
5.3.2 初探FutureTask类78
5.3.3 Future接口79
5.3.4 再探FutureTask类79
5.3.5 使用FutureTask类实现异步泡茶喝的实践案例80
5.4 Guava的异步回调82
5.4.1 详解FutureCallback82
5.4.2 详解ListenableFuture83
5.4.3 ListenableFuture异步任务84
5.4.4 使用Guava实现泡茶喝的实践案例84
5.5 Netty的异步回调模式87
5.5.1 详解GenericFutureListener接口87
5.5.2 详解Netty的Future接口88
5.5.3 ChannelFuture的使用88
5.5.4 Netty的出站和入站异步回调89
5.6 本章小结90
第6章 Netty原理与基础91
6.1 个Netty的实践案例DiscardServer91
6.1.1 创建个Netty项目91
6.1.2 个Netty服务器端程序92
6.1.3 业务处理器NettyDiscardHandler93
6.1.4 运行NettyDiscardServer94
6.2 解密Netty中的Reactor反应器模式95
6.2.1 回顾Reactor反应器模式中IO事件的处理流程95
6.2.2 Netty中的Channel通道组件96
6.2.3 Netty中的Reactor 反应器96
6.2.4 Netty中的Handler处理器97
6.2.5 Netty的流水线(Pipeline)98
6.3 详解Bootstrap启动器类100
6.3.1
^ 收 起
目 录内容简介
本书为了让读者扎稳高性能基础,浅显易懂地剖析高并发IO的底层原理,细致细腻地解析Reactor高性能模式,图文并茂地介绍Java异步回调模式。掌握这些基础原理,能够帮助读者解决Java后台开发的一些实际问题。
本书共12章,主要介绍高性能通信框架Netty,并详尽介绍Netty的EventLoop、Handler、Pipeline、ByteBuf、Decoder、Encoder等重要组件,然后介绍单体IM的实战设计和模块实现。本书对ZooKeeper、 Curator API、Redis、Jedis API的使用也进行详尽的介绍,让读者具备高并发、可扩展系统的设计和开发能力。
本书共12章,主要介绍高性能通信框架Netty,并详尽介绍Netty的EventLoop、Handler、Pipeline、ByteBuf、Decoder、Encoder等重要组件,然后介绍单体IM的实战设计和模块实现。本书对ZooKeeper、 Curator API、Redis、Jedis API的使用也进行详尽的介绍,让读者具备高并发、可扩展系统的设计和开发能力。
比价列表