首页 > 代码库 > redis神器

redis神器

redis是内存型数据库,数据保存在内存中,通过tcp直接存取,优势是速度快,并发高,缺点是数据类型有限,查询功能不强,一般用作缓存。

redis具有持久化机制,可以定期将内存中的数据持久化到硬盘上。

Redis是单线程运行的,所以IO是串行化的,网络IO和内存IO,因此当单条数据太大时,由于需要等待一个命令的所有IO完成才能进行后续的命令,所以性能会受影响。

redis是一个高性能的key-value存储系统,能够作为缓存框架和队列 
但是由于他是一个内存内存系统,这些数据还是要存储到数据库中的

作为缓存框架: 
create/updae/delete---同时存到redis和数据库 
query--先从redis查,没有记录才从数据库查,并把从数据库查的结果也放一份到redis

作为缓存队列list:

2、把对象Object存储到redis中,怎么存?memcache存取对象是序列化和反序列化 
使用通用的序列化、反序列化(频繁的会很消耗cpu,使用Google Protocol Buffer,将对象打成二

进制流) 
或者使用json存储(阿里巴巴的fast-json)

3、对redis队列的理解: 
重要的数据:先存到数据库,然后存到redis 
要求响应速度很高的的数据:先写缓存,然后通过消息队列再写入数据库

让一般数据库使用固态硬盘,这样就可以减少内存与硬盘的速度匹配问题,也可以达到内存数据库的效果,甚至更好。

 

redis神器