关于Redis缓存的一些问题有了解的吗?

有一个A项目,一个B项目。

A项目里存储了项目信息与客户信息的数据,B项目中有一个请求会用到与A的项目信息与客户信息数据。

现在采用redis做。

在B中第一次调用A服务之后,把结果放入缓存,这样后继B项目再用到项目信息与客户信息数据不会再去进行服务调用而是去缓存中拿。

但是这样可能有一个缓存一致性的问题。

A项目中的数据如果有任意改动,那么B项目的缓存如果不及时删除就会有脏数据。

目前想到的几个方案:

1)跨库SQL,所有业务写在SQL里,B服务一次性把自己的数据和A库中的数据通过关联关系全部查出来,但是会涉及到跨库,服务调用性能不详

2)A项目中有任意一个项目信息被修改时,前端能否拿到这个项目的修改后信息,再次调用B服务,把A返回的数据放在B的缓存中?这样实现少量的同步缓存

有没有什么比较好的做法呢?

redis
缓存
数据
2022-07-13 13:19:16
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
观潮看海
1

你是否有a项目的权限,如果有的话你可以让a服务通知b服务把缓存删除,如果没有,你可以当更新时调用a的修改接口和b的删除缓存的接口

分享
微博
QQ
微信
回复
2022-07-13 14:53:02
相关问题
关于designWidth一些问题
342浏览 • 1回复 待解决
关于快速修复一些问题
784浏览 • 1回复 待解决
关于鸿蒙BLE一些问题
4335浏览 • 1回复 待解决
关于华为应用级AT一些问题
12045浏览 • 3回复 待解决
关于鸿蒙和uboot间一些问题
9239浏览 • 2回复 待解决
关于liteos-a一些问题想请教各位
8663浏览 • 2回复 待解决
docker 线上使用一些问题
2508浏览 • 1回复 待解决
DevEco Studio 升级后一些问题
10054浏览 • 1回复 待解决
HUAWEI DevEco Device Tool一些问题
8649浏览 • 3回复 待解决
HarmonyOS 有关Video组件一些问题
29浏览 • 1回复 待解决
View引用和实例化一些问题
313浏览 • 1回复 待解决
关于liteos,一些疑惑
9076浏览 • 3回复 待解决
HarmonyOS 关于VPN一些使用问题
104浏览 • 1回复 待解决
关于laravel一些难受问题,连表查询
3150浏览 • 1回复 待解决
关于系统信息一些参数询问
307浏览 • 1回复 待解决