开发者社区> 问答> 正文

[@徐雷frank][¥20]使用RocksDB作为缓存数据库使用的场景的问题

管理贝贝 2018-11-30 17:27:47 640

有一个问题想要专家给下好的建议。本来我是使用redis缓存的(单机项目),但是个人社区博客项目(huijava.com)嘛,觉得redis比较贵,而且需要做文章内容搜索,es无法使用(打算也是用RocksDB+Ansj分词器自己进行开发),服务器内存不够。只有2G。所以就像改造一下RocksDB,将RocksDB改造成可以进行设置缓存过期时间的缓存框架,暂时只能想到,使用一个项目作为守护项目,维护RocksDB的过期删除,我想到使用RocksDB也将过期时间进行存储防止项目重启或者挂掉。但是也无法防止RocksDB本身插入失败的情况,导致某个k-v永远都不会过期删除。请问您那边有什么建议吗?主要就是使用RocksDB作为缓存数据库使用的场景。

问题来自Java技术沙龙的陈浩翔
Java线下沙龙报名链接:https://yq.aliyun.com/activity/796

存储 缓存 NoSQL Java 数据库 Redis
分享到
取消 提交回答
全部回答(1)
  • 徐雷frank
    2019-07-17 23:17:50

    你好。RocksDB我看了介绍。就目前你的项目和服务器配置,内存太小,缓存的数据少。
    感觉是有Ehcache更适合你的场景,而且效率更高。
    你要求的缓存数据过期和垃圾回收,Ehcache都支持。
    而且对于小项目,是有进程内缓存其实效率更高。
    RocksDB其实还是分布式缓存,独立安装部署,目前看文档还没有过期回收的自动机制,自己实现技术成本高。
    不如直接Ehcache应该是更高的选择,你感觉呢。

    1 0
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题