加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Redis与Mysql数据同步

发布时间:2020-12-16 04:42:02 所属栏目:安全 来源:网络整理
导读:《Redis与Mysql数据同步》要点: 本文介绍了Redis与Mysql数据同步,希望对您有用。如果有疑问,可以联系我们。 Redis 是一个高性能的key-value数据库. redis的出现,很大程度上补偿了memcached这类key-value存储的不足,在部分场合可以对关系数据库起到很好的

《Redis与Mysql数据同步》要点:
本文介绍了Redis与Mysql数据同步,希望对您有用。如果有疑问,可以联系我们。

Redis 是一个高性能的key-value数据库. redis的出现,很大程度上补偿了memcached这类key-value存储的不足,在部分场合可以对关系数据库起到很好的补充作用.

它提供了Python,Ruby,Erlang,PHP客户端,使用很方便.

由于游戏服务器数据更新频繁,如果每次读写数据会造成读写数据库的压力大,效率低.

一般使用redis的场景如下:

Redis与Mysql数据同步

首先,程序先去redis中判断数据是否存在:

  1. 如果存在,则直接返回缓存好的数据.

  2. 如果不存在的话,就会去数据库中,读取数据,并把数据缓存到Redis中.

适用场合:如果数据量比较大,但不是经常更新的情况(比如用户排行).

此外,redis的使用还有以下场景:

Redis与Mysql数据同步

首先先去redis中判断数据是否存在:

  1. 如果存在,则直接更新对应的数据,并把更新后的数据返回给页面.

  2. 而如果不存在的话,就会去先更新数据库中内容,然后把数据保存一份到Redis中.

  3. 后台会有Linux的contrab定时任务机制把Redis中的save_update_keys存储的key,分别读取出来,找到对应的数据,更新到DB中.

优点:这个流程的主要目的是把Redis当作数据库使用,更新获取数据比DB快.非常适合大数据量的频繁变动(比如用户游戏数据).

缺点:对Redis的依赖很大,要做好宕机时的数据保存.(不过可以使用redis的快照AOF,快速恢复的话,应该不会有多大影响,因为就算Redis不工作了,也不会影响后续数据的处理.)

难点:在前期规划key的格式,存储类型很重要,因为这会影响能否把数据同步到DB.

其中第二种方式是游戏服务器中经常使用的方式,例如将用户的游戏数据以hashset的形式存储到redis中,实时更新效率比拜访数据库的效率高.根据定时任务将更新的数据存入数据库中,做到永久保存.

欢迎参与《Redis与Mysql数据同步》讨论,分享您的想法,编程之家 52php.cn为您提供专业教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读