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

字典是软件开发中常用的功能。使用字典的核心问题是翻译,因为数据库中存储的是代码,前台页面展示的是描述。用于多语言环境时,翻译过程还需要根据语言环境进行适配。为了加快字典的加载速度,千里马平台采用了后台缓存+前台缓存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),没有的话从数据库中读取。

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

相关推荐
小小娥子10 小时前
Redis的基础认识与在ubuntu上的安装教程
java·数据库·redis·缓存
DieSnowK10 小时前
[Redis][集群][下]详细讲解
数据库·redis·分布式·缓存·集群·高可用·新手向
PYSpring12 小时前
数据结构-LRU缓存(C语言实现)
c语言·数据结构·缓存
CoderJia程序员甲14 小时前
重学SpringBoot3-集成Redis(一)
java·redis·缓存·springboot
周周写不完的代码17 小时前
redis-数据类型
数据库·redis·缓存
Tonvia19 小时前
猫猫cpu的缓存(NW)
算法·缓存
白总Server21 小时前
CNN+Transformer在自然语言处理中的具体应用
人工智能·神经网络·缓存·自然语言处理·rust·cnn·transformer
周周写不完的代码1 天前
Redis-持久化机制
数据库·redis·缓存
战神刘玉栋1 天前
《程序猿之Redis缓存实战 · Redis 与数据库一致性》
数据库·redis·缓存
-$_$-1 天前
【黑马点评】2 商户查询缓存
java·jmeter·缓存·maven