由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
醉染图书电商存储系统实战 架构设计与海量数据处理9787111697411
¥ ×1
前言 换一种方式学习存储系统
篇 设计
章 如何设计电商系统 3
1.1 设计电商系统的核心流程 4
1.2 根据流程划分功能模块 6
1.3 小结 9
1.4 思考题 10
第2章 订单系统的设计:确保订单数据的准确 11
2.1 订单系统的核心功能和数据 12
2.2 如何避免重复 13
. 如何解决ABA问题 16
2.4 小结 18
2.5 思考题 19
第3章 商品系统的存储架构设计 20
3.1 商品系统需要保存哪些数据 21
3.2 如何存储商品的基本信息 22
3.3 使用MongoDB保存商品参数
3.4 使用对象存储保存图片和视频 24
3.5 将商品介绍静态化 25
3.6 小结 26
3.7 思考题 28
第4章 购物车系统的存储架构:前后端混合存储 29
4.1 设计购物车系统的存储架构时需要把握什么原则 30
4.2 如何设计“暂存购物车”的存储 32
4.3 如何设计“用户购物车”的存储 34
4.4 小结 36
4.5 思考题 37
第5章 账户系统:用事务解决对账问题 38
5.1 为什么总是对不上账 39
5.2 使用数据库事务保数据的一致 40
5.3 理解事务的隔离级别 42
5.4 小结 49
5.5 思考题 50
第6章 分布式事务:保多个系统间的数据一致 51
6.1 什么是分布式事务 52
6.2 2PC:订单与优惠券的数据一致问题 53
6.3 本地消息表:订单与购物车的数据一致问题 57
6.4 小结 59
6.5 思考题 59
第7章 用Elasticsearch构建商品搜索系统 60
7.1 理解倒排索引机制 60
7.2 如何在ES中构建商品的索引 63
7.3 小结 67
7.4 思考题 68
第8章 备份与恢复 69
8.1 如何更安全地实现数据备份和恢复 70
8.2 配置MySL HA实现高可用 73
8.3 小结 75
8.4 思考题 76
第二篇 高速增长
第9章 优化SL 79
9.1 每个系统必踩的“坑”:访问数据库超时 79
9.1.1 事故排查过程 79
9.1.2 如何避免悲剧重演 85
9.1.3 小结 87
9.1.4 思考题 88
9.2 如何避免写出“慢SL” 88
9.2.1 定量认识MySL 88
9.2.2 使用索引避免全表扫描 90
9.. 分析SL执行计划 92
9.2.4 小结 93
9.2.5 思考题 94
9.3 SL在数据库中的执行 94
9.3.1 SL在执行器中是如何执行的 95
9.3.2 SL在存储擎是如何执行的 98
9.3.3 小结 100
9.3.4 思考题 101
0章 MySL应对高并发 102
10.1 使用缓存保护MySL 2
10.1.1 更新缓存的方式 103
10.1.2 注意避免缓存穿透引起雪崩 105
10.1.3 小结 107
10.1.4 思考题 107
10.2 读写分离 107
10.2.1 读写分离是提升MySL并发能力的方案 108
10.2.2 注意读写分离带来的数据不一致问题 111
10.. 小结 112
10.2.4 思考题 113
10.3 实现MySL主从数据库同步 113
10.3.1 如何配置MySL的主从同步 113
10.3.2 复制状态机:所有分布式存储都是这样复制数据的 116
10.3.3 小结 117
10.3.4 思考题 118
第三篇 海量数据
1章 MySL应对海量数据 121
11.1 归档历史数据 121
11.1.1 存档历史订单数据提升查询能 122
11.1.2 如何批量删除大量数据 124
11.1.3 小结 127
11.1.4 思考题 128
11.2 分库分表 128
11.2.1 如何规划分库分表 129
11.2.2 如何选择分片键 130
11.. 如何选择分片算法 131
11.2.4 小结 133
11.2.5 思考题 134
2章 缓存海量数据 135
12.1 用Redis构建缓存集群的实践 135
12.1.1 Redis Cluster如何应对海量数据、高可用和高并发问题 136
12.1.2 为什么Redis Cluster不适合超大规模集群 138
12.1.3 如何用Redis构建超大规模集群 139
12.1.4 小结 141
12.1.5 思考题 142
12.2 大型企业如何实现MySL到Redis的同步 142
12.2.1 缓存穿透:超大规模系统的不能承受之痛 142
12.2.2 使用Binlog实时更新Redis缓存 144
12.. 小结 149
12.2.4 思考题 150
1. 基于Binlog实现跨系统实时数据同步 150
1..1 使用Binlog和消息队列构建实时数据同步系统 151
1..2 如何保数据同步的实时 152
1.. 小结 154
1..4 思考题 154
3章 更换数据库 155
13.1 如何实现不停机更换数据库 155
13.2 如何实现比对和补偿程序 158
13.3 小结 160
13.4 思考题 160
4章 对象存储:简单的分布式存储系统 161
14.1 对象存储数据是如何保存大文件的 162
14.2 如何拆分和保存大文件对象 163
14.3 小结 166
14.4 思考题 167
5章 海量数据的存储与查询 168
15.1 如何存储前端埋点之类的海量数据 168
15.1.1 使用Kafka存储海量原始数据 169
15.1.2 使用HDFS存储更大规模的数据 171
15.1.3 小结 173
15.1.4 思考题 173
15.2 面对海量数据,如何才能查得更快 173
15.2.1 常用的分析类系统应该如何选择存储 174
15.2.2 转变思想:根据查询选择存储系统 176
15.. 小结 178
15.2.4 思考题 178
6章 存储系统的技术选型 179
16.1 技术选型时应该考虑哪些因素 180
16.2 在线业务系统如何选择存储产品 182
16.3 分析系统如何选择存储产品 183
16.4 小结 183
16.5 思考题 184
第四篇 技术展望
7章 使用NewSL解决高可用和分片难题 187
17.1 什么是NewSL 87
17.2 CockroachDB如何实现数据分片和弹扩容 188
17.3 CockroachDB能提供金融级的事务隔离吗 190
17.4 小结 193
17.5 思考题 193
8章 RocksDB:不丢数据的高能KV存储 194
18.1 同样是KV存储,RocksDB有哪些不同 195
18.2 LSM-Tree如何兼顾读写能 196
18.3 小结 199
18.4 思考题 199
附录A 测试题及解析 200
附录B 思考题解析 206
后记 让奋斗成为习惯 219
李玥,美团基础技术部不错技术专家,极客时间《后端存储实战课》《消息队列高手课》等专栏作者。曾在、等公司任职。从事互联网电商行业基础架构领域的架构设计和研发工作多年,曾多次参与“”和“618”电商。专注于分布式存储、云原生架构下的服务治理、分布式消息和实时计算等技术领域,致力于推进基础架构技术的创新与开源。
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格