之前用的.nt5内置缓存MemoryCache
直接把所有新闻信息缓存,然后查询读取(根据分类ID查询、根据最新日期查询、根据最多点击数查询)
---
改换Redis了,怎么存这些新闻信息
1、直接把所有信息JSON,然后保存到key value里面不行,json字符串有22M这么大
2、把分类ID当key,value就是分类下的所有新闻信息,这样JSON字符串大小估计几M,但是根据最新日期查询就麻烦了,要把每个分类的信息取出来,再排序
不知道怎么缓存这些信息好
你的目的是提升查询性能。使用ElasticSearch 或 ClickHouse吧,后者更新。
关于Redis键值大小,有个说法是 512MB,你的22MB 还没有到极限的。
》》redis的key和string类型value限制均为512MB。
redis做缓存的一个优点是取数据快,但是根据你的场景,需要根据不同条件做搜索数据的,建议还是用搜索引擎,像ES这类的
多条件查询是关系型数据库的优点,不是缓存数据库的优点
多研究下redis的数据类型