背景
当前系统当前使用 mysql+redis 的技术架构,现需要对该系统进行重构工作,其中就需要对数据存储技术进行选型。
业务场景如下:
-
该系统为油站价格优惠系统,涉及众多油站(1w+)、商品(92/95/柴油/天然气等)、渠道(端内各渠道/各大 C 共 1k+)维度,涉及价格数量共 1 亿(1wx10x1k)。
-
优惠策略除各维度价格之外,还存在城市、全国维度等非“单点”策略。
-
优惠策略存在周期、人群等复杂筛选条件。
技术细节如下:
-
运营在后台配置优惠策略,数据保存在 mysql 数据库;
-
C 端用户需要获取某一门店商品价格,需要根据条件查询 mysql 数据库,并对查询结果进行匹配过滤;
-
后因性能问题引入缓存,对各维度查询结果进行缓存;
-
后又因缓存穿透、性能问题,演变成:C 端不读区数据库只读区缓存,运营配置完成后进行一轮异步刷缓存。