作品简介

本书从操作系统底层的IO原理入手讲解Java高并发核心编程知识,同时提供高性能开发的实战案例,是一本Java高并发编程的基础原理和实战图书。

本书共分为15章。第1~4章为高并发基础,浅显易懂地剖析高并发IO的底层原理,图文并茂地介绍Java异步回调模式,细致地讲解Reactor高性能模式。这些原理方面的基础知识非常重要,会为读者打下坚实的基础,也是日常开发Java后台应用时解决实际问题的金钥匙。第5~8章为Netty原理和实战,是本书的重中之重,主要介绍高性能通信框架Netty、Netty的重要组件、单体IM的实战设计和模块实现。第9~12章从TCP、HTTP入手,介绍客户端与服务端、服务端与服务端之间的高性能HTTP通信和WebSocket通信。第13~15章对ZooKeeper、Curator API、Redis、Jedis API的使用进行详尽的说明,以提升读者设计和开发高并发、可扩展系统的能力。

本书兼具基础知识和实战案例,既可作为对Java NIO、高性能IO、高并发编程感兴趣的大专院校学生以及初/中级Java工程师的自学图书,也可作为在生产项目中需要用到Netty、Redis、ZooKeeper三大框架的架构师或项目人员的参考书。

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

作品目录

  • 内容简介
  • 作者简介
  • 前言
  • 自序
  • 第1章 高并发时代的必备技能
  • 1.1 Netty为何这么火
  • 1.2 高并发利器Redis
  • 1.3 分布式利器ZooKeeper
  • 1.4 高性能HTTP通信技术
  • 1.5 高并发IM的综合实战
  • 第2章 高并发IO的底层原理
  • 2.1 IO读写的基本原理
  • 2.2 四种主要的IO模型
  • 2.3 通过合理配置来支持百万级并发连接
  • 第3章 Java NIO核心详解
  • 3.1 Java NIO简介
  • 3.2 详解NIO Buffer类及其属性
  • 3.3 详解NIO Buffer类的重要方法
  • 3.4 详解NIO Channel类
  • 3.5 详解NIO Selector
  • 第4章 鼎鼎大名的Reactor模式
  • 4.1 Reactor模式的重要性
  • 4.2 单线程Reactor模式
  • 4.3 多线程Reactor模式
  • 4.4 Reactor模式的优缺点
  • 第5章 Netty核心原理与基础实战
  • 5.1 第一个Netty实战案例DiscardServer
  • 5.2 解密Netty中的Reactor模式
  • 5.3 详解Bootstrap
  • 5.4 详解Channel
  • 5.5 详解Handler
  • 5.6 详解Pipeline
  • 5.7 详解ByteBuf
  • 5.8 Netty的零拷贝
  • 5.9 EchoServer的实战案例
  • 第6章 Decoder与Encoder核心组件
  • 6.1 Decoder原理与实战
  • 6.2 常用的内置Decoder
  • 6.3 Encoder原理与实战
  • 6.4 解码器和编码器的结合
  • 第7章 序列化与反序列化:JSON和Protobuf
  • 7.1 详解粘包和拆包
  • 7.2 使用JSON协议通信
  • 7.3 使用Protobuf协议通信
  • 7.4 Protobuf编解码的实战案例
  • 7.5 详解Protobuf协议语法
  • 第8章 基于Netty单体IM系统的开发实战
  • 8.1 自定义Protobuf编解码器
  • 8.2 IM的登录流程
  • 8.3 客户端的登录处理的实战案例
  • 8.4 服务端的登录响应的实战案例
  • 8.5 详解Session服务器会话
  • 8.6 点对点单聊的实战案例
  • 8.7 详解心跳检测
  • 第9章 HTTP原理与Web服务器实战
  • 9.1 高性能Web应用架构
  • 9.2 详解HTTP应用层协议
  • 9.3 HTTP的演进
  • 9.4 基于Netty实现简单的Web服务器
  • 第10章 高并发HTTP通信的核心原理
  • 10.1 需要进行HTTP连接复用的高并发场景
  • 10.2 详解传输层TCP
  • 10.3 TCP连接状态的原理与实验
  • 10.4 HTTP长连接原理
  • 10.5 服务端HTTP长连接技术
  • 10.6 客户端HTTP长连接技术原理与实验
  • 第11章 WebSocket原理与实战
  • 11.1 WebSocket协议简介
  • 11.2 WebSocket回显演示程序开发
  • 11.3 WebSocket协议通信的原理
  • 第12章 SSL/TLS核心原理与实战
  • 12.1 什么是SSL/TLS
  • 12.2 加密算法原理与实战
  • 12.3 SSL/TLS运行过程
  • 12.4 详解Keytool工具
  • 12.5 使用Java程序管理密钥与证书
  • 12.6 OIO通信中的SSL/TLS使用实战
  • 12.7 单向认证与双向认证
  • 12.8 Netty通信中的SSL/TLS使用实战
  • 12.9 HTTPS协议安全通信实战
  • 第13章 ZooKeeper分布式协调
  • 13.1 ZooKeeper伪集群安装和配置
  • 13.2 使用ZooKeeper进行分布式存储
  • 13.3 ZooKeeper应用开发实战
  • 13.4 分布式命名服务实战
  • 13.5 分布式事件监听的重点
  • 13.6 分布式锁原理与实战
  • 第14章 分布式缓存Redis实战
  • 14.1 Redis入门
  • 14.2 Redis数据类型
  • 14.3 Jedis基础编程的实战案例
  • 14.4 JedisPool连接池的实战案例
  • 14.5 使用spring-data-redis完成CRUD的实战案例
  • 14.6 Spring的Redis缓存注解
  • 14.7 详解SpEL
  • 第15章 亿级高并发IM架构与实战
  • 15.1 支撑亿级流量的高并发IM架构的理论基础
  • 15.2 分布式IM的命名服务的实战案例
  • 15.3 Worker集群的负载均衡的实战案例
  • 15.4 即时通信消息的路由和转发的实战案例
  • 15.5 在线用户统计的实战案例
展开全部