搜尋

首頁  >  問答  >  主體

redis - MySQL存储访问量,关注数等更新比较频繁的数据的时候,如何减轻数据库负担?

目前我的想法是把访问量,关注数等先存到ssdb中(使用ssdb的incr操作),当访问数量%100 == 0 的时候,再将数据存储到数据库中。
大家有什么经验可以共享吗?
--------------更新----------
存储方面大致知道怎么做了,问题是因为有很多数据都缓存在ssdb中(比如关注数,访问量,粉丝数等等大概十个字段),如果想要获取某个用户的最新数据的时候,得从ssdb中读取多次(有些时候会在5-7次),这样的话读性能会不会下降的很厉害?
---------------更新----------
ssdb的API不够熟练。使用ssdb的zset来存储每个用户的信息,即可一次获取到一个用户的所有信息

迷茫迷茫2837 天前741

全部回覆(4)我來回復

  • PHPz

    PHPz2017-04-17 14:23:14

    "優化" 約等於 "加cache", 所以你做的是對的. 至於什麼時候將資料從cache寫到資料庫, 這個倒是可以再權衡.

    回覆
    0
  • 巴扎黑

    巴扎黑2017-04-17 14:23:14

    說個之前我們的解決方案把。
    我們使用的memecache,所以例如點贊,會根據你點讚的id,產生一個緩存,只有點讚數超過一個閥值了,才會寫到資料庫。

    回覆
    0
  • ringa_lee

    ringa_lee2017-04-17 14:23:14

    訪問量、關注數、瀏覽數,按讚數這些資料 redis更適合。 100K以內資料快取Redis效能高於memcached

    回覆
    0
  • 阿神

    阿神2017-04-17 14:23:14

    1.cache
    2.MySQL讀寫分離

    回覆
    0
  • 取消回覆