返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • 正版新书]Java高并发核心编程 卷1:NIO、Netty、Redis、ZooKeep
  • 全店均为全新正版书籍,欢迎选购!新疆西藏青海(可包挂刷).港澳台及海外地区bu bao快递
    • 作者: 尼恩著著 | 尼恩著编 | 尼恩著译 | 尼恩著绘
    • 出版社: 机械工业出版社
    • 出版时间:2021-04-01
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    君凤文轩图书专营店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

    商品参数
    • 作者: 尼恩著著| 尼恩著编| 尼恩著译| 尼恩著绘
    • 出版社:机械工业出版社
    • 出版时间:2021-04-01
    • 版次:1
    • 印次:1
    • 页数:568
    • 开本:16开
    • ISBN:9787111677581
    • 版权提供:机械工业出版社
  • 作者: 尼恩著
  • 著: 尼恩著
  • 装帧: 平装
  • 印次: 1
  • 定价: 149
  • ISBN: 9787111677581
  • 出版社: 机械工业出版社
  • 开本: 16开
  • 印刷时间: 暂无
  • 语种: 暂无
  • 出版时间: 2021-04-01
  • 页数: 568
  • 外部编号: 五三B62294
  • 版次: 1
  • 成品尺寸: 暂无
  • 前言

    自序

    章 高并发时代的必备技能

    1.1 Netty为何这么火

    1.1.1 Netty火热的程度

    1.1.2 Netty是面试的必杀器

    1.2 高并发利器Redis

    1.2.1 什么是Redis

    1.2.2 Redis成为缓存事实标准的原因

    1.3 分布式利器ZooKeeper

    1.3.1 什么是ZooKeeper

    1.3.2 ZooKeeper的优势

    1.4 高性能HTTP通信技术

    1.4.1 十万级以上高并发场景中的高并发HTTP通信技术

    1.4.2 微服务之间的高并发RPC技术

    1.5 高并发IM的综合实战

    1.5.1 高并发IM的学习价值

    1.5.2 庞大的应用场景

    第2章 高并发IO的底层原理

    2.1 IO读写的基本原理

    2.1.1 内核缓冲区与进程缓冲区

    2.1.2 典型的系统调用流程

    2.2 四种主要的IO模型

    2.2.1 同步阻塞IO

    2.2.2 同步非阻塞IO

    2.2.3 IO多路复用

    2.2.4 异步IO

    2.3 通过合理配置来支持百万级并发连接

    第3章 Java NIO核心详解

    3.1 Java NIO简介

    3.1.1 NIO和OIO的对比

    3.1.2 通道

    3.1.3 选择器

    3.1.4 缓冲区

    3.2 详解NIO Buffer类及其属性

    3.2.1 Buffer类

    3.2.2 Buffer类的重要属性

    3.3 详解NIO Buffer类的重要方法

    3.3.1 allocate()

    3.3.2 put()

    3.3.3 flip()

    3.3.4 get()

    3.3.5 rewind()

    3.3.6 mark()和reset()

    3.3.7 clear()

    3.3.8 使用Buffer类的基本步骤

    3.4 详解NIO Channel类

    3.4.1 FileChannel

    3.4.2 使用FileChannel完成文件复制的实战案例

    3.4.3 SocketChannel

    3.4.4 使用SocketChannel发送文件的实战案例

    3.4.5 DatagramChannel

    3.4.6 使用DatagramChannel发送数据的实战案例

    3.5 详解NIO Selector

    3.5.1 选择器与注册

    3.5.2 SelectableChannel

    3.5.3 SelectionKey

    3.5.4 选择器使用流程

    3.5.5 使用NIO实现Discard服务器的实战案例

    3.5.6 使用SocketChannel在服务端接收文件的实战案例

    第4章 鼎鼎大名的Reactor模式

    4.1 Reactor模式的重要性

    4.1.1 为什么首先学习Reactor模式

    4.1.2 Reactor模式简介

    4.1.3 多线程OIO的致命缺陷

    4.2 单线程Reactor模式

    4.2.1 什么是单线程Reactor

    4.2.2 单线程Reactor的参考代码

    4.2.3 单线程Reactor模式的EchoServer的实战案例

    4.2.4 单线程Reactor模式的缺点

    4.3 多线程Reactor模式

    4.3.1 多线程版本的Reactor模式演进

    4.3.2 多线程版本Reactor的实战案例

    4.3.3 多线程版本Handler的实战案例

    4.4 Reactor模式的优缺点

    第5章 Netty核心原理与基础实战

    5.1 个Netty实战案例DiscardServer

    5.1.1 创建个Netty项目

    5.1.2 个Netty服务端程序

    5.1.3 业务处理器NettyDiscardHandler

    5.1.4 运行NettyDiscardServer

    5.2 解密Netty中的Reactor模式

    5.2.1 回顾Reactor模式中IO事件的处理流程

    5.2.2 Netty中的Channel

    5.2.3 Netty中的Reactor

    5.2.4 Netty中的Handler

    5.2.5 Netty中的Pipeline

    5.3 详解Bootstrap

    5.3.1 父子通道

    5.3.2 EventLoopGroup

    5.3.3 Bootstrap启动流程

    5.3.4 ChannelOption

    5.4 详解Channel

    5.4.1 Channel的主要成员和方法

    5.4.2 EmbeddedChannel

    5.5 详解Handler

    5.5.1 ChannelInboundHandler入站处理器

    5.5.2 ChannelOutboundHandler出站处理器

    5.5.3 ChannelInitializer通道初始化处理器

    5.5.4 ChannelInboundHandler的生命周期的实战案例

    5.6 详解Pipeline

    5.6.1 Pipeline入站处理流程

    5.6.2 Pipeline出站处理流程

    5.6.3 ChannelHandlerContext

    5.6.4 HeadContext与TailContext

    5.6.5 Pipeline入站和出站的双向链接操作

    5.6.6 截断流水线的入站处理传播过程

    5.6.7 在流水线上热插拔Handler

    5.7 详解ByteBuf

    5.7.1 ByteBuf的优势

    5.7.2 ByteBuf的组成部分

    5.7.3 ByteBuf的重要属性

    5.7.4 ByteBuf的方法

    5.7.5 ByteBuf基本使用的实战案例

    5.7.6 ByteBuf的引用计数

    5.7.7 ByteBuf的分配器

    5.7.8 ByteBuf缓冲区的类型

    5.7.9 两类ByteBuf使用的实战案例

    5.7.10 ByteBuf的自动创建与自动释放

    5.7.11 ByteBuf浅层复制的不错使用方式

    5.8 Netty的零拷贝

    5.8.1 通过CompositeByteBuf实现零拷贝

    5.8.2 通过wrap操作实现零拷贝

    5.9 EchoServer的实战案例

    5.9.1 NettyEchoServer

    5.9.2 NettyEchoServerHandler

    5.9.3 NettyEchoClient

    5.9.4 NettyEchoClientHandler

    第6章 Decoder与Encoder核心组件

    6.1 Decoder原理与实战

    6.1.1 ByteToMessageDecoder解码器处理流程

    6.1.2 自定义Byte2IntegerDecoder整数解码器

    6.1.3 ReplayingDecoder解码器

    6.1.4 整数的分包解码器的实战案例

    6.1.5 字符串的分包解码器的实战案例

    6.1.6 MessageToMessageDecoder解码器

    6.2 常用的内置Decoder

    6.2.1 LineBasedFrameDecoder解码器

    6.2.2 DelimiterBasedFrameDecoder解码器

    6.2.3 LengthFieldBasedFrameDecoder解码器

    6.2.4 多字段Head-Content协议数据包解析的实战案例

    6.3 Encoder原理与实战

    6.3.1 MessageToByteEncoder编码器

    6.3.2 MessageToMessageEncoder编码器

    6.4 解码器和编码器的结合

    6.4.1 ByteToMessageCodec编解码器

    6.4.2 CombinedChannelDuplexHandler组合器

    第7章 序列化与反序列化:JSON和Protobuf

    7.1 详解粘包和拆包

    7.1.1 半包问题的实战案例

    7.1.2 什么是半包问题

    7.1.3 半包问题的根因分析

    7.2 使用JSON协议通信

    7.2.1 JSON的核心优势

    7.2.2 JSON序列化与反序列化开源库

    7.2.3 JSON序列化与反序列化的实战案例

    7.2.4 JSON传输的编码器和解码器

    7.2.5 JSON传输的服务端的实战案例

    7.2.6 JSON传输的客户端的实战案例

    7.3 使用Protobuf协议通信

    7.3.1 一个简单的proto文件的实战案例

    7.3.2 通过控制台命令生成POJO和Builder

    7.3.3 通过Maven插件生成POJO和Builder

    7.3.4 Protobuf序列化与反序列化的实战案例

    7.4 Protobuf编解码的实战案例

    7.4.1 Netty内置的Protobuf基础编码器/解码器

    7.4.2 Protobuf传输的服务端的实战案例

    7.4.3 Protobuf传输的客户端的实战案例

    7.5 详解Protobuf协议语法

    7.5.1 proto文件的头部声明

    7.5.2 Protobuf的消息结构体与消息字段

    7.5.3 Protobuf字段的数据类型

    7.5.4 proto文件的其他语法规范

    第8章 基于Netty单体IM系统的开发实战

    8.1 自定义Protobuf编解码器

    8.1.1 自定义Protobuf编码器

    8.1.2 自定义Protobuf解码器

    8.1.3 IM系统中Protobuf消息格式的设计

    8.2 IM的登录流程

    8.2.1 图解登录/响应流程的环节

    8.2.2 客户端涉及的主要模块

    8.2.3 服务端涉及的主要模块

    8.3 客户端的登录处理的实战案例

    8.3.1 LoginConsoleCommand和User POJO

    8.3.2 LoginSender

    8.3.3 ClientSession

    8.3.4 LoginResponseHandler

    8.3.5 客户端流水线的装配

    8.4 服务端的登录响应的实战案例

    8.4.1 服务端流水线的装配

    8.4.2 LoginRequestHandler

    8.4.3 LoginProcesser

    8.4.4 EventLoop线程和业务线程相互隔离

    8.5 详解Session服务器会话

    8.5.1 通道的容器属性

    8.5.2 ServerSession服务端会话类

    8.5.3 SessionMap会话管理器

    8.6 点对点单聊的实战案例

    8.6.1 单聊的端到端流程

    8.6.2 客户端的ChatConsoleCommand收集聊天内容

    8.6.3 客户端的CommandController发送POJO

    8.6.4 服务端的ChatRedirectHandler进行消息转发

    8.6.5 服务端的ChatRedirectProcesser进行异步消息转发

    8.6.6 客户端的ChatMsgHandler聊天消息处理器

    8.7 详解心跳检测

    8.7.1 网络连接的假死现象

    8.7.2 服务端的空闲检测

    8.7.3 客户端的心跳发送

    第9章 HTTP原理与Web服务器实战

    9.1 高性能Web应用架构

    9.1.1 十万级并发的Web应用架构

    9.1.2 千万级高并发的Web应用架构

    9.2 详解HTTP应用层协议

    9.2.1 HTTP简介

    9.2.2 HTTP的请求URL

    9.2.3 HTTP的请求报文

    9.2.4 HTTP的响应报文

    9.2.5 HTTP中GET和POST的区别

    9.3 HTTP的演进

    9.3.1 HTTP的1.0版本

    9.3.2 HTTP的1.1版本

    9.3.3 HTTP的2.0版本

    9.4 基于Netty实现简单的Web服务器

    9.4.1 基于Netty的HTTP服务器演示实例

    9.4.2 基于Netty的HTTP请求的处理流程

    9.4.3 Netty内置的HTTP报文解码流程

    9.4.4 基于Netty的HTTP响应编码流程

    9.4.5 HttpEchoHandler回显业务处理器的实战案例

    9.4.6 使用Postman发送多种类型的请求体

    0章 高并发HTTP通信的核心原理

    10.1 需要进行HTTP连接复用的高并发场景

    10.1.1 反向代理Nginx与Java Web应用服务之间的HTTP高并发通信

    10.1.2 微服务网关与微服务Provider实例之间的HTTP高并发通信

    10.1.3 分布式微服务Provider实例之间的RPC的HTTP高并发通信

    10.1.4 Java通过HTTP客户端访问REST接口服务的HTTP高并发通信

    10.2 详解传输层TCP

    10.2.1 TCP/IP的分层模型

    10.2.2 HTTP报文传输原理

    10.2.3 TCP的报文格式

    10.2.4 TCP的三次握手

    10.2.5 TCP的四次挥手

    10.2.6 三次握手、四次挥手的常见面试题

    10.3 TCP连接状态的原理与实验

    10.3.1 TCP/IP连接的11种状态

    10.3.2 通过netstat指令查看连接状态

    10.4 HTTP长连接原理

    10.4.1 HTTP长连接和短连接

    10.4.2 不同HTTP版本中的长连接选项

    10.5 服务端HTTP长连接技术

    10.5.1 应用服务器Tomcat的长连接配置

    10.5.2 Nginx承担服务端角色时的长连接配置

    10.5.3 服务端长连接设置的注意事项

    10.6 客户端HTTP长连接技术原理与实验

    10.6.1 HttpURLConnection短连接技术

    10.6.2 HTTP短连接的通信实验

    10.6.3 Apache HttpClient客户端的HTTP长连接技术

    10.6.4 Apache HttpClient客户端长连接实验

    10.6.5 Nginx承担客户端角色时的长连接技术

    1章 WebSocket原理与实战

    11.1 WebSocket协议简介

    11.1.1 Ajax短轮询和Long Poll长轮询的原理

    11.1.2 WebSocket与HTTP之间的关系

    11.2 WebSocket回显演示程序开发

    11.2.1 WebSocket回显程序的客户端代码

    11.2.2 WebSocket相关的Netty内置处理类

    11.2.3 WebSocket的回显服务器

    11.2.4 WebSocket的业务处理器

    11.3 WebSocket协议通信的原理

    11.3.1 抓取WebSocket协议的本机数据包

    11.3.2 WebSocket握手过程

    11.3.3 WebSocket通信报文格式

    2章 SSL/TLS核心原理与实战

    12.1 什么是SSL/TLS

    12.1.1 SSL/TLS协议的版本演进

    12.1.2 SSL/TLS协议的分层结构

    12.2 加密算法原理与实战

    12.2.1 哈希单向加密算法原理与实战

    12.2.2 对称加密算法原理与实战

    12.2.3 非对称加密算法原理与实战

    12.2.4 数字签名原理与实战

    12.3 SSL/TLS运行过程

    12.3.1 SSL/TLS阶段握手

    12.3.2 SSL/TLS第二阶段握手

    12.3.3 SSL/TLS第三阶段握手

    12.3.4 SSL/TLS第四阶段握手

    12.4 详解Keytool工具

    12.4.1 数字证书与身份识别

    12.4.2 存储密钥与证书文件格式

    12.4.3 使用Keytool工具管理密钥和证书

    12.5 使用Java程序管理密钥与证书

    12.5.1 使用Java操作数据证书所涉及的核心类

    12.5.2 使用Java程序创建密钥与仓库

    12.5.3 使用Java程序导出证书文件

    12.5.4 使用Java程序将数字证书导入信任仓库

    12.6 OIO通信中的SSL/TLS使用实战

    12.6.1 JSSE安全套接字扩展核心类

    12.6.2 JSSE安全套接字的创建过程

    12.6.3 OIO安全通信的Echo服务端实战

    12.6.4 OIO安全通信的Echo客户端实战

    12.7 单向认证与双向认证

    12.7.1 SSL/TLS单向认证

    12.7.2 使用证书信任管理器

    12.7.3 SSL/TLS双向认证

    12.8 Netty通信中的SSL/TLS使用实战

    12.8.1 Netty安全通信演示实例

    12.8.2 Netty内置SSLEngine处理器详解

    12.8.3 Netty的简单安全聊天器服务端程序

    12.9 HTTPS协议安全通信实战

    12.9.1 使用Netty实现HTTPS回显服务端程序

    12.9.2 通过HttpsURLConnection发送HTTPS请求

    12.9.3 HTTPS服务端与客户端的测试用例

    3章 ZooKeeper分布式协调

    13.1 ZooKeeper伪集群安装和配置

    13.1.1 创建数据目录和日志目录

    13.1.2 创建myid文本文件

    13.1.3 创建和修改配置文件

    13.1.4 配置文件示例

    13.1.5 启动ZooKeeper伪集群

    13.2 使用ZooKeeper进行分布式存储

    13.2.1 详解ZooKeeper存储模型

    13.2.2 zkCli客户端指令清单

    13.3 ZooKeeper应用开发实战

    13.3.1 ZkClient开源客户端

    13.3.2 Curator开源客户端

    13.3.3 准备Curator开发环境

    13.3.4 创建Curator客户端实例

    13.3.5 通过Curator创建节点

    13.3.6 通过Curator读取节点

    13.3.7 通过Curator更新节点

    13.3.8 通过Curator删除节点

    13.4 分布式命名服务实战

    13.4.1 ID生成器

    13.4.2 ZooKeeper分布式ID生成器的实战案例

    13.4.3 集群节点的命名服务的实战案例

    13.4.4 结合ZooKeeper实现SnowFlake ID算法

    13.5 分布式事件监听的重点

    13.5.1 Watcher标准的事件处理器

    13.5.2 NodeCache节点缓存的监听

    13.5.3 PathCache子节点监听

    13.5.4 TreeCache节点树缓存

    13.6 分布式锁原理与实战

    13.6.1 公平锁和可重入锁的原理

    13.6.2 ZooKeeper分布式锁的原理

    13.6.3 分布式锁的基本流程

    13.6.4 加锁的实现

    13.6.5 释放锁的实现

    13.6.6 分布式锁的使用

    13.6.7 Curator的InterProcessMutex可重入锁

    13.6.8 ZooKeeper分布式锁的优缺点

    4章 分布式缓存Redis实战

    14.1 Redis入门

    14.1.1 Redis的安装和配置

    14.1.2 Redis客户端命令

    14.1.3 Redis键的命名规范

    14.2 Redis数据类型

    14.2.1 String

    14.2.2 List

    14.2.3 Hash

    14.2.4 Set

    14.2.5 ZSet

    14.3 Jedis基础编程的实战案例

    14.3.1 Jedis操作String

    14.3.2 Jedis操作List

    14.3.3 Jedis操作Hash

    14.3.4 Jedis操作Set

    14.3.5 Jedis操作ZSet

    14.4 JedisPool连接池的实战案例

    14.4.1 JedisPool的配置

    14.4.2 JedisPool的创建和预热

    14.4.3 JedisPool的使用

    14.5 使用spring-data-redis完成CRUD的实战案例

    14.5.1 CRUD中应用缓存的场景

    14.5.2 配置spring-redis.xml

    14.5.3 RedisTemplate模板API

    14.5.4 使用RedisTemplate模板API完成CRUD的实战案例

    14.5.5 使用RedisCallback回调完成CRUD的实战案例

    14.6 Spring的Redis缓存注解

    14.6.1 使用Spring缓存注解完成CRUD的实战案例

    14.6.2 spring-redis.xml中配置的调整

    14.6.3 @CachePut和@Cacheable注解

    14.6.4 @CacheEvict注解

    14.6.5 @Caching组合注解

    14.7 详解SpEL

    14.7.1 SpEL运算符

    14.7.2 缓存注解中的SpEL表达式

    5章 亿级高并发IM架构与实战

    15.1 支撑亿级流量的高并发IM架构的理论基础

    15.1.1 亿级流量的系统架构的开发实战

    15.1.2 高并发架构的技术选型

    15.1.3 详解IM消息的序列化协议选型

    15.1.4 详解长连接和短连接

    15.2 分布式IM的命名服务的实战案例

    15.2.1 IM节点的POJO类

    15.2.2 IM节点的ImWorker类

    15.3 Worker集群的负载均衡的实战案例

    15.3.1 ImLoadBalance负载均衡器

    15.3.2 与WebGate的整合

    15.4 即时通信消息的路由和转发的实战案例

    15.4.1 IM路由器WorkerRouter

    15.4.2 IM转发器PeerSender

    15.5 在线用户统计的实战案例

    15.5.1 Curator的分布式计数器

    15.5.2 用户上线和下线的统计

    尼恩,中南大学硕士,架构师,先后在华为、神州数码从事技术研发工作,专注于高性能Web平台、高性能通信、高性能搜索、数据挖掘等领域的架构设计和分析工作。

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购