×
分布式存储系统:核心技术、系统实现与Go项目实战

分布式存储系统:核心技术、系统实现与Go项目实战

1星价 ¥83.3 (7.0折)
2星价¥83.3 定价¥119.0
暂无评论
图文详情
  • ISBN:9787111758020
  • 装帧:平装-胶订
  • 册数:暂无
  • 重量:暂无
  • 开本:16开
  • 页数:403
  • 出版时间:2024-08-01
  • 条形码:9787111758020 ; 978-7-111-75802-0

本书特色

1)大厂资深工程师撰写,串联纷繁复杂的分布式存储知识,通俗易懂、好学易用,一本书学透,进阶存储资深工程师2)以Go和Linux存储为“地基”,以分布式系统核心技术与实现“主框架”,以分布式文件系统为“梁柱”,利用多种业务场景和案例进行可用性夯实,打造存储知识体系“样板间”

内容简介

全书分为3篇。第1篇存储基本原理和分布式基本原理。特别针对 Linux OS 的 IO 知识进行讲解,并且还会结合 Go 的存储编程实现。第二篇剖析现有的存储系统实现,对它们使用的设计,概念,实现进行深入的剖析。以此来借鉴。第三篇进行编程实战,将编写数个极具实践价值的应用程序,并且形成一个完备的分布式存储系统。

目录

目  录  Contents
前言
**部分 Go语言基础
第1章 存储概述2
1.1 Go语言与存储应用2
1.2 存储:云变革的基石3
1.3 存储技术的发展3
1.3.1 提升速度4
1.3.2 扩大容量4
1.4 本章小结4
第2章 Go语言的数据结构5
2.1 字节5
2.1.1 字节的定义5
2.1.2 字节的序列6
2.2 数组和切片10
2.2.1 数组10
2.2.2 切片11
2.3 字符串13
2.3.1 变量的定义14
2.3.2 内存的分配15
2.3.3 字符串的操作16
2.3.4 类型转换20
2.4 map类型21
2.4.1 创建与初始化21
2.4.2 读取、写入和删除24
2.4.3 元素遍历29
2.5 Channel类型32
2.5.1 创建与初始化32
2.5.2 入队和出队34
2.5.3 select和Channel结合41
2.5.4 for-range和Channel结合44
2.6 接口类型45
2.6.1 变量的定义45
2.6.2 实现原理47
2.6.3 接口nil赋值和判断54
2.7 本章小结55
第3章 Go语言的I/O框架56
3.1 I/O的定义56
3.1.1 基础类型56
3.1.2 组合类型60
3.1.3 进阶类型63
3.2 通用I/O函数68
3.2.1 面向I/O接口的操作68
3.2.2 文件I/O的操作函数70
3.3 文件系统71
3.3.1 FS接口的定义72
3.3.2 FS接口的实现和扩展74
3.4 I/O标准库拓扑78
3.4.1 字节I/O78
3.4.2 字符串I/O79
3.4.3 网络I/O80
3.4.4 文件I/O82
3.4.5 缓冲I/O83
3.5 文件I/O和网络I/O85
3.5.1 文件I/O86
3.5.2 网络I/O89
3.6 本章小结98
第二部分 存储基础
第4章 Linux 存储基础102
4.1 存储架构102
4.1.1 系统调用103
4.1.2 VFS层106
4.1.3 文件系统层122
4.1.4 块层123
4.1.5 设备驱动层123
4.2 文件的定义124
4.2.1 文件的类型124
4.2.2 一切皆文件127
4.2.3 文件句柄130
4.3 文件系统131
4.3.1 文件系统的挂载要素132
4.3.2 文件系统的开发要素132
4.4 文件I/O函数134
4.4.1 打开文件135
4.4.2 写文件137
4.4.3 读文件138
4.4.4 文件偏移操作139
4.4.5 数据刷盘141
4.4.6 关闭文件141
4.5 本章小结142
第5章 存储I/O实践143
5.1 文件的读写143
5.1.1 顺序I/O143
5.1.2 随机I/O146
5.2 数据安全落盘的方式148
5.2.1 Sync刷盘方式148
5.2.2 Direct I/O方式149
5.3 读写优化思路153
5.3.1 写操作的优化154
5.3.2 读操作的优化 159
5.4 本章小结162
第6章 高级I/O模式163
6.1 阻塞和非阻塞I/O163
6.2 同步和异步I/O164
6.3 I/O 接口的模式165
6.3.1 同步阻塞I/O165
6.3.2 同步非阻塞I/O166
6.3.3 异步阻塞I/O167
6.3.4 异步非阻塞I/O167
6.4 Linux的I/O模式实现168
6.4.1 信号驱动I/O168
6.4.2 Linux的异步I/O169
6.4.3 I/O多路复用171
6.5 本章小结172
第7章 并发I/O模型173
7.1 多进程模型173
7.2 多线程模型174
7.3 协程模型175
7.3.1 基本原理175
7.3.2 Go语言的Goroutine178
7.4 I/O多路复用179
7.4.1 select181
7.4.2 poll183
7.4.3 epoll184
7.5 本章小结200
第8章 缓存模式201
8.1 旁路缓存模式202
8.1.1 读操作流程202
8.1.2 写操作流程203
8.2 读写穿透模式205
8.2.1 读穿透模式205
8.2.2 写穿透模式206
8.3 异步回写模式206
8.4 本章小结207
第9章 数据校验技术208
9.1 数据校验的概念与原理208
9.2 数据校验的应用场景209
9.3 常见数据校验技术210
9.3.1 奇偶校验210
9.3.2 循环冗余校验211
9.3.3 摘要算法212
9.4 本章小结215
第三部分 分布式系统基础
第10章 分布式存储理论218
10.1 分布式系统的特征218
10.2 分布式系统的问题220
10.2.1 无全局时钟220
10.2.2 网络异常220
10.2.3 结果的三态221
10.3 数据一致性222
10.3.1 状态一致性222
10.3.2 操作一致性222
10.4 分布式理论225
10.4.1 CAP 理论225
10.4.2 BASE 理论226
10.5 分布式协议227
10.5.1 2PC协议227
10.5.2 3PC协议228
10.5.3 Paxos协议230
10.5.4 Raft协议233
10.6 本章小结236
第11章 高可用系统237
11.1 高可用的概念与原理237
11.2 高可用的关键技术238
11.3 高可用的架构模式240
11.3.1 双机架构的模式240
11.3.2 集群模式242
11.4 本章小结245
第12章 数据策略246
12.1 数据分布设计原则246
展开全部

作者简介

李庆:资深存储系统工程师,拥有近十年存储研发与落地经验。曾参与设计和运维多个EiB级别(百亿兆字节规模)的存储系统,这些系统应用于全球领先的科技企业,支撑着关键业务的数据处理和存储需求。

预估到手价 ×

预估到手价是按参与促销活动、以最优惠的购买方案计算出的价格(不含优惠券部分),仅供参考,未必等同于实际到手价。

确定
快速
导航