5、分布式事务:如何保证多个系统间的数据是一致的?

你好,我是李玥。 上节课,我和你一起通过账户系统学习了数据库事务,事务很好地解决了交易类系统的数据一致性问题。 事务的原子性和持久性可以确保在一个事务内,更新多条数据,要么都成功,要么都失败。在一个系统内部,我们可以使用数据库事务来保证数据一致性。那...

后端存储实战课

4、事务:账户余额总是对不上账,怎么办?

你好,我是李玥。今天这节课我们来说一下电商的账户系统。 账户系统负责记录和管理用户账户的余额,这个余额就是每个用户临时存在电商的钱,来源可能是用户充值或者退货退款等多种途径。 账户系统的用途也非常广泛,不仅仅是电商,各种互联网内容提供商、网络游戏服务...

后端存储实战课

3、复杂而又重要的购物车系统,应该如何设计?

你好,我是李玥。 今天这节课我们来说一下购物车系统的存储该如何设计。 首先,我们来看购物车系统的主要功能是什么。就是在用户选购商品时,下单之前,暂存用户想要购买的商品。购物车对数据可靠性要求不高,性能也没有特别的要求,在整个电商系统中,看起来是相对比...

后端存储实战课

2、流量大、数据多的商品详情页系统该如何设计?

你好,我是李玥。 今天这节课我们看一下,如何设计一个快速、可靠的存储架构支撑商品系统。 相对于上节课提到的订单系统,电商的商品系统主要功能就是增删改查商品信息,没有很复杂的业务逻辑,支撑的主要页面就是商品详情页(下文简称:商详)。不过,设计这个系统的...

后端存储实战课

1、创建和更新订单时,如何保证数据准确无误?

你好,我是李玥。 订单系统是整个电商系统中最重要的一个子系统,订单数据也就是电商企业最重要的数据资产。今天这节课,我来和你说一下,在设计和实现一个订单系统的存储过程中,有哪些问题是要特别考虑的。 一个合格的订单系统,最基本的要求是什么?数据不能错。 ...

后端存储实战课

课前加餐:电商系统是如何设计的

你好,我是李玥。 在这个系列课程中,我们会讲电商这个行业在多年系统建设和运维过程中,总结出来的使用分布式存储系统的一些最佳实践。也会以电商系统作为例子来讲解存储相关的技术知识和问题。这都需要你对电商的业务逻辑、系统架构、核心业务流程有一个基本的认知。...

后端存储实战课

开篇词:今天起,换种方式学存储

你好,我是李玥,《消息队列高手课》专栏的作者,目前在京东任职架构师。这是我在极客时间上的第二门课程,很高兴在这里遇见你。 在十多年的开发者职业生涯中,我的从业经历应该算是比较丰富的。在传统IT行业,做过非常多的企业级ToB的系统;转战互联网后,我又曾...

后端存储实战课

24、结束语:成长和进化,技术如此,我们亦如此

你好,我是陈东。今天,我们走到了这个专栏的最后一个篇章。 一起学习的五十多个日夜,我们从熟悉的数组和链表开始,学到了搜索引擎、广告引擎以及推荐引擎。这就像一场长途跋涉,一路上景色不停切换,不变的,是我们探索这个信息世界的好奇心。 在我看来,信息是构成...

检索技术核心20讲

23、高性能检索系统中的设计漫谈

你好,我是陈东。欢迎来到检索专栏的第三次加餐时间。 在进阶篇的讲解过程中,我们经常会提起一些设计思想,包括索引与数据分离、减少磁盘IO、读写分离和分层处理等方案。这些设计思想看似很简单,但是应用非常广泛,在许多复杂的高性能系统中,我们都能看到类似的设...

检索技术核心20讲

22、倒排检索加速(二):如何对联合查询进行加速?

你好,我是陈东。欢迎来到检索专栏的第二次加餐时间。 在上一篇加餐中,我们讲了工业界中,倒排索引是怎么利用基础的数据结构来加速“求交集”过程的。现在,相信你已经对跳表、哈希表和位图的实际使用,有了更深刻的理解和认识了。然而,在日常的检索中,我们往往会面...

检索技术核心20讲