什么是redis

Redis是一个Key-value存储系统,redis提供了丰富的数据结构,包括string(字符串),list(列表),sets(集合),ordered set(有序集合),hashes(哈希)。可以对于这些数据执行原子操作,例如对字符串进行附加操作,递增哈希中的值,向列表中增加元素,计算集合的交集,并集和差集等。

Redis的优点

性能极高:redis能支持超过100k每秒的读写频率。

丰富的数据类型:set集合,ordered set有序集合,list列表,string字符串,hashes哈希

原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并后的原子性执行

丰富的特性:Redis还支持public/subscribe,通知,key过期等等特性。

安装redis

1、wget

2、tar

3、make

开启redis

在../src/下开启redis-server(服务端)和redis-cli(客户端),先开启服务端。

使用netstat命令监听6379端口,netstat -nlt |grep "6379"(tcp,不做域名解析,显示socket)

redis命令

set数据类型命令

使用set和get命令来创建和检索string,set命令将取代任何已存在的key,set命令还有一个附加参数,可以让set命令只有在没有相同key的情况下成功,反之亦然,可以让set命令在有相同key的情况下成功

set mykey newval nx

set mykey newval xx

加法器

set sum 1

incr counter (sum=2)

incrby counter 50 (sum=52)

redis可以运用mset和mget命令一次性完成多个key-value的对应关系,使用mget命令,redis返回一个value数组

mset a 1 b c 3

mget a b c

list数据类型命令

lpush 插入一个新的元素到头部

rpush 插入一个新的元素到尾部

lrange 显示元素,需要两个索引,0表示list开头第一个,-1表示最后一个

brpop blpop 用阻塞式请求队列

hashes数据类型命令

hashes是字符串字段和字串值之间的映射

hmset命令设置一个多域的hash表

hget命令获取指定的单域

hgetall获取指定key的所有信息

hmget类似于hget,返回一个value数组

Set无序集合命令

sadd 命令产生一个无序集合,返回集合的元素个数

smembers 用于查看集合

sismember用于查看集合是否存在,匹配项包括集合名和元素个数,匹配成功返回1,匹配失败返回0

ordered set有序集合命令

Redis有序集合与普通集合很相似,是一个没有重复元素的字符串集合,不同之处是有序集合的每一个成员都关联了一个权值用来排序集合中的成员。

使用withscores参数返回记录值

redis基础及基本命令的更多相关文章

  1. REDIS基础笔记

    Redis基础笔记 资源链接 简介 简介 安装 五种数据类型及相应命令 1. 字符串类型 2. 散列类型 3. 列表类型 4. 集合类型 5. 有序集合 其他 事务 SORT 生存时间 任务队列 发布 ...

  2. linux - redis基础

    目录 linux - redis基础 redis 源码编译安装 redis 数据结构 1. strings类型 2. list 类型 3. sets集合类型 有序集合 5. 哈希数据结构 centos ...

  3. windows下使用redis,Redis入门使用,Redis基础命令

    windows下使用redis,Redis入门使用,Redis基础命令 >>>>>>>>>>>>>>>> ...

  4. [.net 面向对象程序设计深入](14)Redis——基础

    [.net 面向对象程序设计深入](14)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...

  5. linux redis基础应用 主从服务器配置

    Redis基础应用 redis是一个开源的可基于内存可持久化的日志型,key-value数据库redis的存储分为内存存储,磁盘存储和log文件三部分配置文件中有三个参数对其进行配置 优势:和memc ...

  6. 【redis 基础学习】(六)Redis HyperLogLog

    摘自:http://www.mayou18.com/detail/o6M0v9mi.html Redis  HyperLogLog 结构讲解 Redis 在 2.8.9 版本添加了 HyperLogL ...

  7. [.net 面向对象程序设计深入](36)Redis——基础

    [.net 面向对象程序设计深入](36)Redis——基础 很长一段时间没更新博客了,坚持做一件事,真不是件容易的事,后面我会继续尽可能的花时间更新完这个系列文章. 因这个系列的文章涉及的范围太大了 ...

  8. mysql主从复制、redis基础、持久化和主从复制

    一.mysql(mariadb)基础 1.基础命令(centos7操作系统下) 1.启动mysql systemctl start mariadb 2.linux客户端连接自己 mysql -uroo ...

  9. Redis基础用法、高级特性与性能调优以及缓存穿透等分析

     一.Redis介绍 Redis是一个开源的,基于内存的结构化数据存储媒介,可以作为数据库.缓存服务或消息服务使用.Redis支持多种数据结构,包括字符串.哈希表.链表.集合.有序集合.位图.Hype ...

随机推荐

  1. 树的计数 Prüfer编码与Cayley公式 学习笔记

    最近学习了Prüfer编码与Cayley公式,这两个强力的工具一般用于解决树的计数问题.现在博主只能学到浅层的内容,只会用不会证明. 推荐博客:https://blog.csdn.net/moreja ...

  2. shlwapi.h文件夹文件是否存在

    { if( NULL == lpszFileName) { return FALSE; } if (PathFileExists(lpszFileName)) { return TRUE; } els ...

  3. Sass--传多个参数

    Sass 混合宏除了能传一个参数之外,还可以传多个参数,如: @mixin center($width, $height) { width: $width; height: $height; posi ...

  4. Vue列表渲染-变异方法

    Vue 包含一组观察数组的变异方法,变异方法 (mutation method),顾名思义,会改变被这些方法调用的原始数组 所以它们也将会触发视图更新.这些方法如下: push() pop() shi ...

  5. ARC096E Everything on It 容斥原理

    题目传送门 https://atcoder.jp/contests/arc096/tasks/arc096_c 题解 考虑容斥,问题转化为求至少有 \(i\) 个数出现不高于 \(1\) 次. 那么我 ...

  6. IBM研究人员开发了一对低功耗,高性能的计算机视觉系统

    机器学习算法近年来有了突飞猛进的发展.例如,像Facebook这样的最先进的系统,可以在一小时内训练图像分类算法,而不会牺牲准确性.但是,许多这些系统都是在具有强大GPU的高端机器上进行培训的,随着物 ...

  7. wait与sleep区别?

    wait与sleep区别? 对于sleep()方法,该方法是属于Thread类中的.而wait()方法,则是属于Object类中的. sleep()方法导致了程序暂停执行指定的时间,让出cpu给其他线 ...

  8. 使用burpsuite的几点经验

    背景: 最近在做完一个系统的渗透测试,我同事在我昨晚渗透测试之后上去看了一下,发现了了一个我没有发现的漏洞. 请教了他之后,发现这个漏洞他是通过burp的scan发现的,只是对一个有参数的请求包sca ...

  9. Python中的"Special Method"

    The first thing to know about special methods is that they are meant to be called by the Python inte ...

  10. Ubuntu 16.04配置vncviewer

    网上有各种各样的教程,既混乱又复杂.这是提供一个亲自测试可用的配置方案,十分简单,桌面环境选用xfce,Ubuntu版本是16.04. 1 安装 Xfce 和 TightVNC sudo apt in ...