redis基础知识汇总
来源:互联网 发布:js身份证号码格式验证 编辑:程序博客网 时间:2024/05/21 22:56
redis:
- redis是Key Value nosql数据库,数据存储在内存中,单进程,自己实现了一套异步事件处理,虽然单进程但是数据库处理很快,异步持久化;
- 持久化方式:RDB(数据快照),AOF(日志追加的方式)进行异步持久化
- 支持集群
radis有五种的数据类型:
- string 字符串类型
- 字符串类型是redis中的最基本的数据类型,也是其他4种数据类型的基础,它能存储任何形式的字符串,包括二进制数据
- hash 哈希表类型
- 哈希类型是一个字符串类型的字段和字段值的映射表。哈希类型适合存储对象。相较于将对象每一个字段存成当个字符串类型,将一个对象存成在hash类型会占用更少的内存,并且可以更方便的存取整个对象
- list 链表类型
- 链表类型可以存储一个有序的字符串列表,内部是使用双向链表实现的。所以我们通常用链表类型的LPUSH和LPOP或者RPUSH和RPOP实现栈的功能,用LPUSH和RPOP或者RPUSH和LPOP实现队列的功能
- set 无序集合类型
- 集合类型和数学中集合概念相似,比如集合中的元素是唯一的,无序的,集合与集合之间可以进行交并差等操作
- zset 有序集合类型
- 有序集合类型和集合类型一样,只不过多了一个“有序”,有序集合中每一个元素都关联了一个分数,虽然集合中每一个元素都不同的,但是他们的分数却可以相同
注意:
- redis的数据都是存储在内存里的;
- 2.0以上好像是可以开启VM虚拟内存(把磁盘分配部分作为虚拟内存)的功能,通过内部机制把冷数据放到虚拟内存里,常用的数据还是在内存中;
- redis只能是作为热数据(经常被并发查询的)的缓存,不能把redis当成数据库去使用
内存控制与优化:
- 存储的数据的控制:
- 控制数据字段(序列化对象的时候不用的字段不要读到redis,减少存储数据量)
- 设置过期时间
- 热数据存储(冷数据过滤移除,或者不存)
- 不存储长期累加增长的数据,尤其是可能成为大数据的,(可以考虑使用 mongodb)
redis其他辅助:
- 查看配置:config get * > http://blog.csdn.net/lengzijian/article/details/8593656
- 查看信息:info > http://www.runoob.com/redis/server-info.html
- 其他命令: > http://www.runoob.com/redis/redis-commands.html
.NET类库:
- 正在使用版本:ServiceStack.Redis 3.9.71.0,>=4.0版本有限制连接池的数量,需要收费
- StackExchange.Redis
> 下载:http://download.csdn.net/detail/shi1984/8916095#comment
> 博客: http://www.cnblogs.com/bnbqian/p/4962855.html
> github: https://github.com/StackExchange/StackExchange.Redis
当前我们的应用场景:
- STRING
> 存储信息对象序列化JSON格式 - HASH:
> 经常被并发请求的小数据查询,如:最近五日的超高返商品数据,存储在Hash中,field=商品ID,value=商品信息(对象序列化JSON格式) - LIST:
> 作为信息队列使用,不断的Lpush数据到List中,rpop数据出来入库,或者处理。 - ZSET:
> 排序列表,如搜索关键字排名 - SET 相对比较少去使用
总结:
- 前期多做功课,摆对正确姿势去使用redis可以加快请求数据的响应时间,然而噬无忌惮的使用会让你为内存问题而烦恼,从长远的角度看这个不仅仅是只要加几条内存就能解决的问题
0 0
- redis基础知识汇总
- 基础知识汇总
- redis基础知识
- Redis基础知识
- redis基础知识
- redis 基础知识
- Redis基础知识
- redis基础知识
- redis 基础知识
- redis 基础知识
- redis基础知识
- redis基础知识
- redis基础知识
- redis基础知识
- redis基础知识
- 【汇总】redis
- 摄影基础知识汇总
- 手机基础知识汇总
- 起航
- MacBookPro创建IPv6网络
- 训练神经网络的五大算法
- 在MyEclipse中使用Junit 的方法
- php中(文件下载)
- redis基础知识汇总
- hive安装(本地mariaDB为元数据库)
- C语言共用体(Union)
- 搭建CentOS在线yum源镜像服务器
- C# 中Parse 和TryParse的效率问题
- 用CSS3实现带小三角形的div框(不用图片)
- 关键字static,静态
- MySQL一些函数的使用
- memcache