千里马平台设计说明-字典缓存

字典是软件开发中常用的功能。使用字典的核心问题是翻译,因为数据库中存储的是代码,前台页面展示的是描述。用于多语言环境时,翻译过程还需要根据语言环境进行适配。为了加快字典的加载速度,千里马平台采用了后台缓存+前台缓存2级缓存机制。

以下代码摘自@/api/qlm_dictItem.js

复制代码
export async function gainCodeItemList(setid){
 let value=qlm_getValue(setid,"session")
 if (value!=null){
   return JSON.parse(value)
 }
 let ret=await queryCodeItemList(setid)
 if (ret.retCode==88888888){
   qlm_setValue(setid,JSON.stringify(ret.data),"session")
   return ret.data
 }
 else{
   console.info("gainCodeItemList:"+setid+" error:"+ret.msg)
   return null
 }
}

取字典时先从sessionStore中取(只所以存在sessionStore中是为了刷新方便),取不到时调用接口queryCodeItemList从后台取字典。

后台接收到请求时,先取缓存(根据配置取内存或redis),没有的话从数据库中读取。

维护字典信息时,需要实时刷新缓存。

相关推荐
?abc!1 小时前
缓存(4):常见缓存 概念、问题、现象 及 预防问题
缓存
hycccccch3 小时前
Redis的IO多路复用
数据库·redis·缓存
雪芽蓝域zzs3 小时前
鸿蒙Next开发 获取APP缓存大小和清除缓存
缓存·华为·harmonyos
zandy10113 小时前
高并发场景下的BI架构设计:衡石分布式查询引擎与缓存分级策略
分布式·缓存·高并发架构·弹性扩展·分布式查询·缓存分级·mpp引擎
kebijuelun3 小时前
KV cache 缓存与量化:加速大型语言模型推理的关键技术
缓存·语言模型·kotlin
张哈大6 小时前
【 Redis | 实战篇 秒杀实现 】
数据库·redis·缓存
山猪打不过家猪8 小时前
(五)毛子整洁架构(分布式日志/Redis缓存/OutBox Pattern)
分布式·缓存
?abc!14 小时前
缓存(5):常见 缓存数据淘汰算法/缓存清空策略
java·算法·缓存
悟空打码18 小时前
MyBatis源码解读5(3.1、缓存简介)
缓存·mybatis
码农飞哥19 小时前
互联网大厂Java面试实战:Spring Boot到微服务的技术问答解析
java·数据库·spring boot·缓存·微服务·消息队列·面试技巧