当前位置:主页 > 书籍配套资源 > 分布式缓存配套资源
《分布式缓存—原理、架构及Go语言实现》配套资源

《分布式缓存—原理、架构及Go语言实现》配套资源

  • 更新:2021-06-21
  • 大小:58.24 KB
  • 类别:分布式缓存
  • 作者:胡世杰
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容简介

随着互联网的飞速发展,各行各业对互联网服务的要求也越来越高,互联网系统很多常见的存储类场景都面临着容量和稳定性风险。此时,本地缓存已无法满足需要,分布式缓存由于其高性能、高可用性等优点迅速被广大互联网公司接受并使用。
本书共分3个部分,每个部分都有3章。部分为基本功能的实现,主要介绍基于HTTP的in memory缓存服务、HTTP/REST协议、TCP等。第2部分介绍性能相关的内容,我们将集中全力讲解从各方面提升缓存服务性能的方法,主要包括pipeline的原理、RocksDB批量写入等。很后一个部分则和分布式缓存服务集群有关,主要介绍分布式缓存集群、节点的再平衡功能等。本书选择用来实现分布式缓存的编程语言是当前流行的Go语言。
本书适合从事缓存方面工作的工程师或架构师,也适合想要学习和实现分布式缓存的读者。

作者介绍

胡世杰,上海交通大学硕士,目前在七牛云任职技术专家,是私有云存储服务的负责人。 他是分布式对象存储系统专家,在该领域拥有多年的架构、开发和部署经验,精通C、C++、Perl、Python、Ruby、Go等多种编程语言,熟悉ElasticSearch、RabbitMQ等各种开源软件。之前他还写过一本关于分布式对象存储的图书—《分布式对象存储—原理、架构及Go语言实现》。本书是他的第二部作品。 除了自己写作,他还致力于技术图书的翻译,是《JavaScript面向对象精要》《Python和HDF5大数据应用》《Python高性能编程》等多部著作的译者。

目录

  • 第 1部分 基本功能
  • 第 1章 基于HTTP的内存缓存服务 3
  • 1.1 缓存服务的接口 3
  • 1.1.1 REST接口 3
  • 1.1.2 缓存Set流程 5
  • 1.1.3 缓存Get流程 6
  • 1.1.4 缓存Del流程 7
  • 1.2 Go语言实现 8
  • 1.2.1 main包的实现 8
  • 1.2.2 cache包的实现 9
  • 1.2.3 HTTP包的实现 14
  • 1.3 功能演示 19
  • 1.4 与Redis比较 21
  • 1.4.1 Redis介绍 21
  • 1.4.2 redis-benchmark介绍 23
  • 1.4.3 cache-benchmark介绍 24
  • 1.4.4 性能对比 26
  • 1.5 小结 30
  • 第 2章 基于TCP的内存缓存服务 32
  • 2.1 基于TCP的缓存协议规范 33
  • 2.1.1 协议范式 33
  • 2.1.2 缓存Set流程 35
  • 2.1.3 缓存Get流程 36
  • 2.1.4 缓存Del流程 36
  • 2.2 Go语言实现 37
  • 2.2.1 main函数的变化 37
  • 2.2.2 TCP包的实现 38
  • 2.2.3 客户端的实现 44
  • 2.3 功能演示 45
  • 2.4 性能测试 47
  • 2.5 小结 48
  • 第3章 数据持久化 50
  • 3.1 RocksDB简介 50
  • 3.2 RocksDB性能测试 51
  • 3.2.1 基本读写性能 52
  • 3.2.2 大容量测试 52
  • 3.3 用cgo调用C++库函数 55
  • 3.4 Go语言实现 58
  • 3.4.1 main函数的实现 58
  • 3.4.2 cache包的实现 59
  • 3.5 功能演示 65
  • 3.6 性能测试 67
  • 3.7 小结 69
  • 第 2部分 性能相关
  • 第4章 用pipelining加速性能 73
  • 4.1 pipelining原理 73
  • 4.2 redis pipelining性能对比 75
  • 4.3 Go语言实现 77
  • 4.3.1 main包的实现 77
  • 4.3.2 cacheClient包的实现 86
  • 4.4 性能测试 97
  • 4.5 小结 99
  • 第5章 批量写入 101
  • 5.1 批量写入能够提升写入性能的原理 101
  • 5.2 RocksDB批量写入性能测试 102
  • 5.3 Go语言实现 103
  • 5.4 性能测试 108
  • 5.5 小结 112
  • 第6章 异步操作 113
  • 6.1 异步操作能够提升读取性能的原理 114
  • 6.2 Go语言实现 117
  • 6.3 性能测试 122
  • 6.4 小结 127
  • 第3部分 服务集群
  • 第7章 分布式缓存 131
  • 7.1 为什么我们需要集群服务 131
  • 7.2 负载均衡和一致性散列 133
  • 7.3 获取节点列表的接口 140
  • 7.4 Go语言实现 140
  • 7.4.1 main函数的实现 140
  • 7.4.2 cluster包的实现 141
  • 7.4.3 HTTP包的实现 145
  • 7.4.4 TCP包的实现 147
  • 7.5 功能演示 149
  • 7.6 小结 152
  • 第8章 节点再平衡 154
  • 8.1 节点再平衡的技术细节 154
  • 8.2 节点再平衡的接口 155
  • 8.3 Go语言实现 155
  • 8.3.1 HTTP包的实现 155
  • 8.3.2 cache包的实现 157
  • 8.4 功能演示 162
  • 8.5 小结 164
  • 第9章 缓存生存时间 166
  • 9.1 缓存生存时间的作用 166
  • 9.2 Go语言实现 167
  • 9.2.1 main函数的实现 167
  • 9.2.2 cache包的实现 168
  • 9.3 功能演示 172
  • 9.4 小结 174

资源下载

资源下载地址1:https://box.lenovo.com/l/nuNxmT

相关资源

网友留言