百道网
 您现在的位置:Fun书 > 深入理解Redis
深入理解Redis


深入理解Redis

作  者:Jeremy Nelson (作者), 汪佳南 (译者)

出 版 社:电子工业出版社

出版时间:2017年04月

定  价:89.00

I S B N :9787121312014

所属分类: 专业科技  >  计算机/网络  >  程序设计    

标  签:计算机?网络  数据库  

[查看微博评论]

分享到:

TOP内容简介

本书以由浅入深、由原理到应用场景的方式介绍了Redis 这款NoSQL 数据库产品。书中不仅细致地讲解了Redis 中的数据结构及流行的使用模式,还针对Redis 键的设计和管理,以及内存管理提出了建设性的方案。同时,作者深入Redis 源码,将其内部构造通过源代码调试的方式进行呈现。本书适合有一定NoSQL 经验的开发者或者架构师阅读。读者可以从书中找到许多应用场景和解决方案,例如Docker 部署、Redis 消息队列、基于Redis 的ETL 应用和基于Redis 的机器学习等。


TOP作者简介

作者:(美)Jeremy Nelson(杰里米.尼尔森) 译者:汪佳南

Jeremy Nelson是科罗拉多斯普林市的一所四年制私立文理学院科罗拉多学院的一位元数据和系统图书管理员。除了每周8小时的图书馆研究技术支持工作,为大学生提供信息素养指导,并监督图书馆的系统和编目部门这三项工作之外,Nelson正在积极研究和开发Catalog Pull平台中的各种组件和开源工具,供科罗拉多大学、科罗拉多州研究图书馆联盟和国会图书馆使用。他还是语义网络初创公司KnowledgeLinks.io的联合创始人和CTO。他之前在西部州科罗拉多大学和犹他大学有过图书馆工作经验。在成为图书管理员之前,他曾在各种软件公司和金融服务机构中担任程序员和项目经理。他的第一本书Becoming a Lean Library于2015年出版,将精益创业和精益制造理念应用于图书馆和图书馆的运营。Nelson从诺克斯学院获得了本科学位,并从University of Illinois Urbana-Champaign获得了图书馆和信息科学的科学硕士。

汪佳南,拥有7年软件开发经验。对编程情有独钟,对产品设计很“感冒”,始终坚信技术可以改变世界。《RabbitMQ实战 高效部署分布式消息队列 》一书译者。


TOP目录

1 为何选择Redis? 1

合适之选? 2

尝试使用Redis 4

流行的使用模式 9

Redis不合心意?马上再试试! 11

总结 13

2 高级键管理与数据结构 14

Redis键 14

Redis键模式 15

键分隔符和命名约定 17

手动创建Redis模式 19

解构Redis对象映射器 22

键过期 27

键的注意事项 27

大O符号 28

为自定义代码计算大O符号 30

回顾Redis数据结构的时间复杂度 32

字符串 32

哈希 33

列表 34

集合 35

有序集合 36

高级有序集合操作 39

位串和位操作 39

HyperLogLogs 41

总结 42

3 内存管理的建议与技巧 44

配置Redis 44

主从复制 45

32位Redis 45

INFO memory详解 47

键过期 49

LRU键清除策略 54

创建内存高效的Redis数据结构 62

小巧的哈希、列表、集合和有序集合 62

把位、字节和Redis字符串用作随机访问数组 68

优化哈希,高效存储 69

硬件和网络延迟 72

操作系统建议 74

总结 75

4 Redis编程第一部分:Redis核心、客户端和编程语言 76

Redis的内部结构 76

理解redis.h和redis.c 83

Redis序列化协议 93

Redis RDB格式 97

使用Redis和Python创建协程 99

使用Node.js和Redis实现Todo列表应用 103

复制与公共访问 106

总结 106

5 Redis编程第二部分:Lua脚本、管理与DevOps 108

在Redis中使用Lua 108

使用Redis的KEYS和ARGV 117

Redis中的高级Lua脚本 121

MARC21数据提取 121

纸质文具在线商店 123

让JSON-LD、Lua和Redis协同工作 126

Redis Lua调试器 130

Redis的编程与管理 133

主从复制 134

使用MULTI和EXEC实现事务 136

Redis在DevOps中扮演的角色 139

总结 140

6 可伸缩性:Redis集群和Sentinel 142

数据分区的方法 142

范围分区 143

列表分区 145

哈希分区 148

复合分区 149

键哈希标签 150

使用Twemproxy实现Redis集群 151

使用关联数据片段服务器测试Twemproxy 152

Redis集群的背景 158

Redis集群概览 159

使用Redis集群 160

Redis集群实时重新配置及重新分片 165

故障转移 168

在Redis集群中替换或者升级节点 170

使用Redis Sentinel进行监控 171

为区域代码列表分区配置Redis Sentinel 173

总结 176

7 Redis与互补的NoSQL技术 177

NoSQL技术的繁荣 177

Redis作为MongoDB的分析补充 181

Redis作为ElasticSearch的预处理组件 192

在BIBCAT中使用Redis和ElasticSearch 193

ElasticSearch、Logstash和Redis 198

Redis作为Fedora Commons的智能缓存补充 199

总结 205

8 Docker容器与云端部署 206

Linux容器 206

与Redis相关的Docker基础 211

Docker镜像中的层 219

Docker文件系统后端 220

Docker和Redis的问题 227

使用Docker Compose打包应用程序 227

Redis和AWS 232

专门的云托管选项 233

Redis Labs 234

DigitalOcean Redis 234

总结 235

9 任务管理与消息队列 236

Redis的发布/订阅模式概述 236

发布/订阅RESP回复 237

SUBSCRIBE和UNSUBSCRIBE RESP数组 237

PSUBSCRIBE和UNSUBSCRIBE数组 239

使用redis-cli进行发布/订阅 240

Redis发布订阅实战 242

第一个工作站采用Python进行发布订阅 244

第二个工作站采用Node.js进行发布订阅 246

第三个工作站使用Lua客户端进行发布订阅 248

Redis键空间通知 251

使用Redis和Celery进行任务管理 255

GIS和RestMQ 259

使用RestMQ进行任务管理 262

使用Redis技术进行消息通信 264

使用Disque进行消息通信 264

总结 266

10 信息流的测量与管理 267

基于Redis的ETL方案 267

将JSON转换成RESP 273

管理Redis时的安全考虑 279

使用Redis Web仪表板进行运营监测 282

机器学习 283

朴素贝叶斯与工作分类 284

使用Redis实现线性规划 294

总结 299

来源 300


TOP书摘

TOP 其它信息

加载页面用时:47.4046