码迷,mamicode.com
首页 > 其他好文 > 详细

redis 基础知识

时间:2019-11-20 12:18:26      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:下载地址   hot   tin   启动脚本   jar包   功能   error   cond   链表   

针对TB量级的数据,关系型数据库在可缩放方面几乎已经达到极限。一个解决方案是使用键值(Key-Value)存储数据库,这是一种NoSQL模型,非常适合不涉及过多业务关系,同时能有效减少读写磁盘的次数。

1.启动和安装

Redis 安装。Window 下安装,下载地址:https://github.com/MSOpenTech/redis/releases

打开一个 cmd 窗口,使用 cd 命令切换目录到 类似C:\redis 运行:

windos 启动redis  设置启动脚本 start.bat    redis-server.exe redis.windows.conf

使用默认IP地址和端口连接Redis数据库(IP地址:127.0.0.1,端口号6379)

切换到 redis 目录下运行:

使用指定IP地址和端口连接Redis数据库  redis-cli -h 192.168.2.144 -p 6379

查询所有键值  keys *

切换数据库 (0-15) select 0

2.redis五种数据类型以及应用场景

(1)String:可以包含任何数据,比如jpg图片或者序列化的对象,一个键最大能存储512M。

命令:set、get。

(2)List:链表(双向链表),增删快,提供了操作某一段元素的API。适用于:最新消息排行等功能;消息队列。

命令:lpush、rpop。

(3)Set:集合。哈希表实现,元素不重复,为集合提供了求交集、并集、差集等操作。适用于:共同好友;利用唯一性,统计访问网站的所有独立ip;好友推荐时,根据tag求交集,大于某个阈值就可以推荐。

命令:sadd、scard、sismember。

(4)Hash:字典。键值对集合,即编程语言中的Map类型。适合存储对象,并且可以像数据库中update一个属性一样只修改某一项属性值。适用于:存储、读取、修改用户属性。

命令:hset、hget、hmset、hmget、hlen。

(5)Sorted Set:有序集合。将Set中的元素增加一个权重参数score,元素按score有序排列。数据插入集合时,已经进行天然排序。适用于:排行榜;带权重的消息队列。

命令:ZADD key score1 member1 [score2 member2]。

 3.redis配置文件

Redis的持久化: 
RDB:snapshotting, 二进制格式;默认开启,不需要配置,按事先定制的策略,周期性地将数据从内存同步至磁盘;数据文件默认为dump.rdb; 

AOF以日志的形式,记录服务器处理的每一个操作,在redis服务启动之初,读取该文件,然后重新构建数据库,保证启动后的数据库数据是完整的;

客户端显式使用SAVE或BGSAVE命令来手动启动快照保存机制; 
SAVE:同步,即在主线程中保存快照,此时会阻塞所有客户端请求; 
BGSAVE:异步;backgroud 
记录每次写操作至指定的文件尾部实现的持久化;当redis重启时,可通过重新执行文件中的命令在内存中重建出数据库; 
BGREWRITEAOF:AOF文件重写; 重写是直接从内存快照之后进行重构命 
令,使得原来的多个重复操作一步到一个值。更加简化高效 
不会读取正在使用AOF文件,而是通过将内存中的数据以命令的方式保存至临时文件中,完成之后替换原来的AOF文件; 在重启服务时将记录的命令操作执行一遍。优点是不会丢失数据或丢失数据很少,而缺点是如计数器的操作记录要进行很多次,不如直接设置计数器的值。

RDB相关的配置: *save <seconds> <changes>

save 900 1

save 300 10

save 60 10000

save 5 200000

表示:三个策略满足其中任意一个均会触发SNAPSHOTTING操作;900s内至少有一个key有变化,300s内至少有10个key有变化,60s内至少有1W个key发生变化; stop-writes-on-bgsave-error yes dump操作出现错误时,是否禁止新的写入操作请求;快照有错,禁止用户写入操

 

4.jedis入门

jedis是redis官方首选的java客户端开发包

 技术图片

 

 

JAR包 依赖commons-pool2.jar

技术图片

 

  1.  单利连接
  2. 技术图片

     

     连接池连接

技术图片

 

 

redis 基础知识

标签:下载地址   hot   tin   启动脚本   jar包   功能   error   cond   链表   

原文地址:https://www.cnblogs.com/RemindMe/p/11344552.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!