redis 当进程间内存使用的时候,当某个redis客户端(应用服务器)进程突然挂掉,有什么办法使redis清除此进程的存储的数据?
如果数据没因进程挂掉而清除,将会造成读到脏数据
11 回复
那就把redis放到你自己的進程里就好啦 掛掉的同時redis一起掛掉
@jiangzhuo 单个redis多个redis客户端进程,如果redis挂了 其他redis客户端进程无法正常工作啊
我觉得问题描述不清晰。。某个进程突然挂掉
指的不是 redis 挂掉是吗?
@alsotang redis客户端进程,也可以说应用服务器进程
这个应该和信号有关,通过对该进程的信号捕获后做相应的处理,按照楼主的需求,应该要在每次使用redis存储的时候,都要标识该数据属于哪个进程id,然后一旦捕获到终止信号,就把这些remove掉,不过这个用node来写貌似挺吃力的。。。
关注,帮忙顶一下
每個進程維護一個Set,每次SET都都把Key加進去。由保姆進程觀察進程是否退出,退出就把相應的Set和Keys刪掉。 自豪地采用 CNodeJS ionic
@iwillwen 嗯,不过这样需要浪费额外的资源去做,如果没有原生的接口处理,应该这是比较靠谱的方案了 谢谢
@CocaCola183 共同学习,谢谢帮顶
没人顶吗???求解问题
redis 本身为了防止你这种 case 的出现…哈哈哈 你直接放内存吧~如果允许的话… 要不然, 要不然启动时先 kill 了 / truncate 了