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

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

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

相关推荐
憧憬成为java架构高手的小白20 小时前
黑马八股redis
数据库·redis·缓存
Geoking.21 小时前
【大模型 Token 计费】输入、输出、缓存命中
缓存
我叫张小白。1 天前
基于Redis与FastAPI的分布式共享会话体系
数据库·redis·分布式·缓存·中间件·fastapi·依赖注入
绝知此事1 天前
Redis 从入门到精通:Spring Boot 实战三部曲(一)—— 基础核心与快速上手
数据库·redis·缓存
YL200404261 天前
【Redis实战篇】基于Redis的分布式锁的原理及实现
数据库·redis·缓存
fpcc1 天前
C++编程实践——提高缓存的命中
c++·缓存
闪电悠米1 天前
黑马点评-优惠券秒杀-03_basic_seckill_and_oversell
java·数据库·spring boot·spring·缓存·oracle·面试
cfm_29141 天前
Redis数据安全性解析
数据库·redis·缓存
辞忧九千七1 天前
Redis 单机一主二从主从复制完整搭建指南
数据库·redis·缓存
Chasing__Dreams2 天前
Redis--基础知识点--32--redis底层存储结构
数据库·redis·缓存