您的位置:首页 > 数据库 > Redis

Redis系列(一)是什么?

2017-10-25 19:07 363 查看

引言

            Redis(Remote Dictionary Server)——远程字典服务器。

概述

             Redis是由C语言编写,高性能的分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库。而且遵守BSD协议(五大开源协议之一),完全开源免费。

内容

              一 Redis特点

           1 支持数据持久化:Redis所有的数据都保存在内存中,如果没有配置持久化(将程序数据在持久状态和瞬时状态间转换的机制),重启Redis后数据就丢失了,于是Redis支持持久化功能,将内存的数据保存到磁盘,当Redis重启之后,从磁盘恢复数据。

           2 支持数据备份:主从复制的一种数据备份(master——slave模式)。

           3 支持五大数据类型:正好弥补了memcached数据类型不丰富的问题,这也是它的优势之一。

                  (1)String:Redis基本类型,一个key对应一个value,value最多可以是512M;String是二进制安全的(即redis的String可以包含任何数据)。

                  (2)Hash:一个键值对集合,String类型的field和value映射表,类似Java里面的Map<String,Object>。

                  (3)List:字符串列表,按照插入顺序排序,底层实现是个链表。

                  (4)Set:String类型的无序集合,且不允许重复的成员,通过Hashtable实现

                  (5)Zset:在Set的基础上,不同的是每个元素都会关联一个double类型的分数,通过分数来为集合中的成员进行从小到大的排序。Zset的成员是唯一的,但分数(score)却可以重复。

        二 其他知识

           1 单进程:单进程模型来处理客户端的请求,实际处理速度完全依赖主进程的执行效率,读写等事件的响应通过对epoll函数的包装来实现。Epoll:linux内核为处理大批量文件描述符而作了改进的epoll,是linux下的多路复用IO接口select/epoll的增强版,能显著提高程序在大量并发连接中只有少量活跃的情况下的系统的CPU的利用率。

           2 默认16个数据库,下标从0开始,默认使用0号库

           3 统一密码管理,16个库都是同样的密码,需要自己设置

           4 Redis索引都是从零开始的

           5 默认的端口是6379

总结

            Redis相当于在数据库和service中间又加的一层缓存数据库,更好的适应现在3V+3高的信息时代。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: