1
fuxkcsdn Apr 20, 2015
不丢弃的部分数据设置一个无关紧要的字段,定期更新此字段,猜测的没实际操作过
|
2
ryd994 Apr 21, 2015 via Android
那就上持久化啊
|
4
baskice OP 找到一个临时解决办法,给session不设置过期时间,然后redis设置成
volatile-lru: evict keys trying to remove the less recently used (LRU) keys first, but only among keys that have an expire set, in order to make space for the new data added. 给所有其他数据都设置过期时间。不过测试发现这个模式下死掉的内存会快速增加,以我们这边生产环境看大概2天能耗光8G内存。目前不清楚死掉的空间是为什么。。。。。 |
5
lincanbin Apr 21, 2015 via Android
开个表存着,每次用之前判断该在不在,不在就去读表在写入缓存。
我自己都是这样做的,毕竟缓存属于不可靠储存,要持久化肯定要靠硬盘 |
6
maddemon Apr 21, 2015
session专门用一个redis进程
|
8
axb Apr 21, 2015 via iPhone
开两个redis,一个做缓存,一个做存储
|
9
stiekel Apr 21, 2015
对于不能丢的数据,比如像你的会话,不能单纯依靠redis的,建议策略如下:
1、生成会话时,存redis的同时,也存到存储中,比如MongoDB 2、当在redis找不到会话时,去MongoDB查询,如果查到了,回写到redis 当然,具体策略还可以更优,比如设置一个存放会话id列表的地方(可以是缓存中),先在缓存中查会话,没有则到会话id列表中查,如果查到了则去存储,没有查到则直接证明会话不存在。 |
10
fly2never Apr 21, 2015
redis其实不适合做session管理
|
11
xiaoheshang Apr 21, 2015
可以用memcache做session管理
|
12
duzhe0 Apr 21, 2015
开两个redis实例。
|
13
hydrazt Apr 21, 2015
顶 两个实例
|
15
solaro May 8, 2015
做持久化。持久化俗名就是把原本放在缓存里的数据全部写到硬盘里。重启之后数据还可以再读回缓存。
有两种,一种叫aof,一种叫rdb。。 |