西维蜀黍

【Cache System】缓存一致性 - Solution Discussion

策略1 - 先更新数据库,再更新缓存

分析一(线程安全角度)

同时有请求A和请求B进行更新操作,那么会出现

  1. 线程A更新了数据库
  2. 线程B更新了数据库
  3. 线程B更新了缓存
  4. 线程A更新了缓存

一般来说,请求A更新缓存应该比请求B更新缓存早才对,但理论上,也可能因为网络等原因(虽然概率相对较低),B却比A更早更新了缓存。这就导致了脏数据。

  ...


【Engineering】Clean Code

  ...


【Engineering】信息烟囱(Information Silo)

烟囱式系统(Information Silo Architecture)

烟囱式系统(Information Silo Architecture),来自维基百科的解释是:一种不能与其他系统进行有效协调工作的信息系统,又称为孤岛系统。

比如:

假设淘宝和天猫,是两个大系统,忽略业务模式的不同,这两个系统里面都有用户管理、商品管理、订单管理、支付等功能模块,如下图,这样子的淘宝和天猫就好像两座烟囱各自矗立,互不关联。

  ...


【Engineering】Data Migration

Data migration

Data migration is the process of selecting, preparing, extracting, and transforming data and permanently transferring it from one computer storage system to another. Additionally, the validation of migrated data for completeness and the decommissioning of legacy data storage are considered part of the entire data migration process.

  ...


【Redis】使用 - zset

Add

ZADD

# Adds members with the given scores to the ZSET
ZADD key-name score member [score member …]
  ...