当前位置:   article > 正文

面试官:高并发场景下,你们是怎么保证数据的一致性的?_数据一致性怎么保证

数据一致性怎么保证

1. 场景分析

面试官:你们的服务的 QPS 是多少?

我:我们的服务高峰期访问量还挺大的,大约是 3 万吧。

面试官:这么大的访问量,你们的服务器能撑住吗?有加缓存吗?

我:有的,我们使用了 Redis 做缓存,接口优先查询缓存,缓存不存在,才访问数据库。这样可以减少数据库访问压力,加快查询效率。

面试官:一份数据存储在两个地方,更新数据的时候,你们是怎么保证数据的一致性的?

看到了吧,好的面试官一般不直接问你数据一致性的解决方案,而是循循善诱,结合具体的使用场景,再问你解决方法。如果你没做过这方面,没有线上的实战经验,一般很难回答的有条理性、有思考性。

保证数据一致性,一般有这 4 种方法:

  1. 先更新缓存,再更新数据库。

  2. 先更新数据库,再更新缓存。

  3. 先删除缓存,再更新数据库。

  4. 先更新数据库,再删除缓存。

每种方案都详细的讨论一下:

2. 解决方案

2.1 先更新缓存,再更新数据库

如果同时来了两个并发写请求,执行过程是这样的:

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号