mysql前端放redis_redis做mysql前端数据代理的可能性(全数据缓存)

题目可能描述不清晰,也不是需求驱动,全是我自己yy的,一些名字也是我臆想的,见谅

我的想法是mysql读操作就是正常的缓存逻辑,而mysql的写操作也写到redis,在空闲的时候再同步到mysql,这样web服务的数据操作全部打到redis上,应该可以扛住更大流量

对mysql可以读写分离,redis做读缓存,然后写操作通过消息队列减轻写操作的压力。这种方法可能有实时问题,不知对不对。

以上只是开脑洞,还望大神能指教可行性和实现是否有意义

我在我的项目中用到counter updater

一个用计数,一个就是常规的update

redis中使用hash类型存储数据。

举例来说

mysql中有用户表user,用户资料表user_profile

redis中user使用hash类型,合并需要到的user user_profile字段,合并哪些字段需要根据自己的项目需求。

用到redis就要考虑缓存的维护。

我举个例子:更新用户最后登录时间

updater中有个方法更新redis中user中的last_login成员数据,同时插入updater的队列。

这样,redis缓存维护了,然后定时消费updater队列来更新mysql。

思路就是这样。

数据不变就可简单的代理,如果数据还要修改,删除呢 比如发个帖发完了觉得不对,要修改,或者要删除, 你在修改/删除的时候是修改redis还是修改mysql呢 这时候个要判断你的数据是已经同步到mysql还是没同步在redis,增加了额外的复杂性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值