目前我的想法是把访问量,关注数等先存到ssdb中(使用ssdb的incr操作),当访问数量%100 == 0 的时候,再将数据存储到数据库中。
大家有什么经验可以共享吗?
--------------更新----------
存储方面大致知道怎么做了,问题是因为有很多数据都缓存在ssdb中(比如关注数,访问量,粉丝数等等大概十个字段),如果想要获取某个用户的最新数据的时候,得从ssdb中读取多次(有些时候会在5-7次),这样的话读性能会不会下降的很厉害?
---------------更新----------
ssdb的API不够熟练。使用ssdb的zset来存储每个用户的信息,即可一次获取到一个用户的所有信息
"優化" 約等於 "加cache", 所以你做的是對的. 至於什麼時候將資料從cache寫到資料庫, 這個倒是可以再權衡.
說個之前我們的解決方案把。
我們使用的memecache,所以例如點贊,會根據你點讚的id,產生一個緩存,只有點讚數超過一個閥值了,才會寫到資料庫。
訪問量、關注數、瀏覽數,按讚數這些資料 redis更適合。 100K以內資料快取Redis效能高於memcached
1.cache
2.MySQL讀寫分離