顶部
收藏

分布式编程


作者:
韩少云 纪威 陈天竺
定价:
35.00 元
版面字数:
340.00千字
开本:
16开
装帧形式:
平装
页数:
188
最新
印次时间:
2021年01月
ISBN:
978-7-04-050556-6
物料号:
50556-00
出版时间:
2021-09-01
读者对象:
高等职业教育
一级分类:
计算机大类
二级分类:
计算机类
三级分类:
计算机应用技术

本书是高等教育出版社与达内时代科技集团(以下简称达内集团)联合出品的程序设计类新形态一体化教材,由达内集团一线授课讲师根据自己多年的授课经验结合课堂真实案例编写。本书以互联网企业实际用人的要求为导向,总结近几年国家应用型本科院校与示范性高职院校软件技术专业教学改革及达内集团在IT培训行业十多年的经验编写而成。

分布式编程在教学体系中定位为大数据课程的前置课程。全书共6章,分别是Socket通信、NIO、并发访问及优化、序列化与反序列化、初识Zookeeper、Zookeeper企业级开发。每章都包括基础知识论述与案例讲解,是达内一线优秀讲师讲课模式的再现。同时每章还包括本章重点、本章目标、本章小结等模块。

本书配有微课视频、授课用PPT、案例源代码等丰富的数字化学习资源。与本书配套的数字课程“分布式编程”在“智慧职教”网站(www.icve.com.cn)上线,学习者可以登录网站进行在线学习及资源下载,授课教师可以调用本课程构建符合自身教学特色的SPOC课程,详见“智慧职教”服务指南。教师也可发邮件至编辑邮箱1548103297@qq.com获取相关资源。

本书可作为高职及应用型本科院校软件技术专业Java大数据课程的配套教材,也可作为Java大数据爱好者的入门教材和参考用书。

  • 目录
    • 前辅文
      • 第1章Socket通信
        • 本章重点
          • 本章目标
            • 1.1网络模型
              • 1.1.1 OSI参考模型
                • 1.1.2 TCP/IP参考模型
                • 1.2传输协议
                  • 1.2.1 UDP
                    • 1.2.2 TCP
                    • 1.3Socket通信
                      • 1.3.1 基于UDP的Socket通信
                        • 1.3.2 基于TCP的Socket通信
                          • 1.3.3 多线程聊天室
                          • 1.4进程和线程
                            • 1.4.1 进程
                              • 1.4.2 为什么引入进程模型
                                • 1.4.3 线程
                                • 1.4.4线程的调度算法
                                  • 本章小结
                                  • 第2章NIO
                                    • 本章重点
                                      • 本章目标
                                        • 2.1BIO
                                          • 2.1.1什么是BIO
                                            • 2.1.2 BIO的局限性
                                              • 2.1.3 BIO的应用场景
                                              • 2.2NIO
                                                • 2.2.1 NIO概述
                                                  • 2.2.2 应用场景
                                                  • 2.3缓冲区
                                                    • 2.4通道
                                                      • 2.4.1 服务器端通道
                                                        • 2.4.2 客户端通道
                                                          • 2.4.3 通道读/写数据
                                                            • 2.4.4 数据报通道
                                                              • 2.4.5 文件通道
                                                              • 2.5选择器
                                                                • 2.5.1 选择器的设计思路
                                                                  • 2.5.2 选择器的常用方法
                                                                    • 2.5.3 NIO服务器端和客户端的实现
                                                                    • 2.6TCP粘包和拆包
                                                                      • 2.6.1 粘包和拆包
                                                                        • 2.6.2 何时需要考虑粘包问题
                                                                          • 2.6.3 拆包策略
                                                                          • 2.7AIO简介
                                                                            • 本章小结
                                                                            • 第3章并发访问及优化
                                                                              • 本章重点
                                                                                • 本章目标
                                                                                  • 3.1阻塞式队列(BlockingQueue)
                                                                                    • 3.1.1 生产者—消费者模型
                                                                                      • 3.1.2 ArrayBlockingQueue
                                                                                      • 3.2并发映射
                                                                                        • 3.2.1 ConcurrentMap
                                                                                          • 3.2.2 ConcurrentNavigableMap
                                                                                          • 3.3闭锁和栅栏
                                                                                            • 3.3.1 CountDownLatch
                                                                                              • 3.3.2 CyclicBarrier
                                                                                              • 3.4交换机和信号量
                                                                                                • 3.4.1 Exchanger
                                                                                                  • 3.4.2 Semaphore
                                                                                                  • 3.5线程池
                                                                                                    • 3.5.1 线程池简介
                                                                                                      • 3.5.2 ExecutorService
                                                                                                        • 3.5.3 Executors
                                                                                                        • 3.6锁
                                                                                                          • 3.6.1 Lock
                                                                                                            • 3.6.2 ReadWriteLock
                                                                                                              • 3.6.3 原子性
                                                                                                              • 本章小结
                                                                                                              • 第4章序列化与反序列化
                                                                                                                • 本章重点
                                                                                                                  • 本章目标
                                                                                                                    • 4.1序列化与反序列化概述
                                                                                                                      • 4.1.1 序列化
                                                                                                                        • 4.1.2 反序列化
                                                                                                                          • 4.1.3 serialVersionUID
                                                                                                                            • 4.1.4 transient
                                                                                                                            • 4.2序列化框架
                                                                                                                              • 4.2.1 Apache Avro简介
                                                                                                                                • 4.2.2 Avro支持的数据类型
                                                                                                                                  • 4.2.3 Avro的.avsc文件
                                                                                                                                    • 4.2.4 Avro序列化
                                                                                                                                    • 4.3RPC
                                                                                                                                      • 4.3.1 RPC简介
                                                                                                                                        • 4.3.2 Avro RPC
                                                                                                                                        • 本章小结
                                                                                                                                        • 第5章初识Zookeeper
                                                                                                                                          • 本章重点
                                                                                                                                            • 本章目标
                                                                                                                                              • 5.1分布式系统
                                                                                                                                                • 5.1.1 何谓分布式
                                                                                                                                                  • 5.1.2 分布式环境的问题
                                                                                                                                                  • 5.2Zookeeper
                                                                                                                                                    • 5.2.1 Zookeeper概述
                                                                                                                                                      • 5.2.2 单机版Zookeeper的安装配置
                                                                                                                                                        • 5.2.3 Zookeeper的数据模型
                                                                                                                                                          • 5.2.4 Zookeeper的常用指令
                                                                                                                                                            • 5.2.5 Zookeeper结点类型
                                                                                                                                                              • 5.2.6 Zookeeper常用API
                                                                                                                                                              • 5.3Zookeeper集群
                                                                                                                                                                • 5.3.1 搭建Zookeeper集群
                                                                                                                                                                  • 5.3.2 Zookeeper服务器角色
                                                                                                                                                                    • 5.3.3 leader选举
                                                                                                                                                                      • 5.3.4 原子广播
                                                                                                                                                                        • 5.3.5 observer观察者
                                                                                                                                                                          • 5.3.6 配置observer角色
                                                                                                                                                                          • 5.4Zookeeper集群命令
                                                                                                                                                                            • 5.4.1 Linux nc安装
                                                                                                                                                                              • 5.4.2 Zookeeper常用集群命令
                                                                                                                                                                                • 5.4.3 Zookeeper的应用场景
                                                                                                                                                                                • 本章小结
                                                                                                                                                                                • 第6章Zookeeper企业级开发
                                                                                                                                                                                  • 本章重点
                                                                                                                                                                                    • 本章目标
                                                                                                                                                                                      • 6.1项目概述
                                                                                                                                                                                        • 6.1.1 Zebra项目简介
                                                                                                                                                                                          • 6.1.2 Zebra项目整体架构
                                                                                                                                                                                          • 6.2Zebra项目搭建
                                                                                                                                                                                            • 6.2.1 搭建TarenaZebra-contract工程
                                                                                                                                                                                              • 6.2.2 搭建TarenaZebra-engine1-01工程
                                                                                                                                                                                                • 6.2.3 搭建TarenaZebra-engine2工程
                                                                                                                                                                                                  • 6.2.4 搭建TarenaZebra-jobtracker工程
                                                                                                                                                                                                  • 6.3Zebra项目编码
                                                                                                                                                                                                    • 6.3.1 创建jobtracker工程的FileHandle类
                                                                                                                                                                                                      • 6.3.2 创建jobtracker工程的FileToBlock类
                                                                                                                                                                                                        • 6.3.3 实现一级引擎RPC服务器
                                                                                                                                                                                                          • 6.3.4 jobtracker与一级引擎远程交互
                                                                                                                                                                                                            • 6.3.5 一级引擎处理日志文件
                                                                                                                                                                                                              • 6.3.6 实现二级引擎RPC服务器
                                                                                                                                                                                                                • 6.3.7 实现一级引擎RPC客户端
                                                                                                                                                                                                                  • 6.3.8 二级引擎实现数据合并
                                                                                                                                                                                                                  • 本章小结
                                                                                                                                                                                                                  • 参考文献