问下这种业务怎么解决
场景:在一个微服务中使用redis来解决session不共享,所以将用户有关数据存储到redis
1、就是一个用户关注或者取消关注另一个用户
2、另一个用户每次发起一个请求都可以在redis中获取最新的粉丝数据
或者说想问问有没有在保证高效性 一致性和安全性的情况下在开发中更合适的业务流程
用redis的话使用其集合实现。
key为userid,
value为集合,
关注就是sadd,
取关就是rsem
个人建议:
1、关注详情数据持久化到数据库DB层面
2、查询关注详情的集合缓存到redis中,并且设定缓存失效时间(避免穿透)
3、关注总数可以考虑key为用户ID,value为数值的方式,也可以考虑key为自定义ID,value为HashMap的方式,这个可以缓存可以永不失效
4、在关注和取消关注的时候更新redis,最好使用redis的互斥锁