没超时的适合,保存在内存中,timeout后持久化,可以下次通过key查询到。
redis持久化只是一定时间将整个内存dump一次(类似这种机制),不针对某个key;
memcached好像就没有持久化机制。
先谢过啦~
redis持久化只是一定时间将整个内存dump一次(类似这种机制),不针对某个key;
memcached好像就没有持久化机制。
先谢过啦~
|
1
为什么没有超时的时候不持久化?
|
|
2
你这个叫缓存
|
|
4
mongodb
|
|
6
|
|
8
|
|
9
mongo 你存数据的存一个过期时间,取数据的时候判断下,过期就废弃。
|
|
10
cassandra,不过不太算是传统意义上的kv。
|
|
14
|
|
15
|
|
16
@binux 我们使用的一个一个的对象基本上都是很小的内存单元,而系统以linux为例,swap似乎是以一页一页的单位来的,这样的处理方式,对于某些不常活动的进程的内存swap掉是有作用的,而对于活跃的程序就不能指望它了吧。
@wb14123 mongodb不能算是一个内存型数据库吧。 @api 在提问前就找过这个,它说:It is NOT a cache solution,窃以为是只负责持久,不负责内存里面缓存着。 @ccdjh 当然,你说的这种方法是可行的,或者自己写文件,或者用其他数据库,不一定是mongodb,我想问问有没有现成的一个有这种功能的数据库。现在看来似乎是没有的。 @livid 发现个小bug,大概是js里面的:当输入框填满的时候,再点一下“回复”箭头,新增的 @someone 这一行会出现在输入框下方不可见区域内。当然,再输入回车后会自动拉伸输入框。 |
|
17
@oldcai 但是mongodb是自动将热数据存到内存的,有多少可用内存就会吃多少内存。所以和redis放在一台机器上估计会有问题。@ccdjh 所说的放到不同的机器上应该是可以接受的。
|
|
18
redis+MYSQL redis 上设置TTL作为缓存是用, 如果读不到再从MYSQL上拉出来
|