1 redis 支持5种数据类型。redis 的值是字节数组,所以他不关心具体存储的是什么。

redis 的键可以是

  • 数值
  • strings
  • lists
  • sets
  • hashes

Redis 支持诸如列表、集合或有序集合的交集、并集、查集等高级原子操作;同时,如果键值的类型是普通数字,Redis 则提供自增等原子操作。

2 Redis 的命令都是原子性的,你可以轻松地利用 INCR,DECR 命令来构建计数器系统。

3 string 类型是二进制安全的, string 可以看做是 byte 数组,最大上限是 1G 字节。

set name HongWan
get name
setnx name HongWan_new

nx 是 not exist 的意思。

setex haircolor  red

设置 haircolor= red 的键值对,并指定它的有效期是 10 秒。

4 mset,一次设置多个 key 的值,成功返回 ok 表示所有的值都设置了,失败返回 0 表示没有任何值被设置。

mset key1 HongWan1 key2 HongWan2

5 msetnx,如果不存在,一次设置多个 key 的值。要么全部设置、要么全部不执行。

6 getset,设置 key 的值,并返回 key 的旧值。

redis 127.0.0.1:> getset name HongWan_new
"HongWan"
redis 127.0.0.1:> get name
"HongWan_new"

7 getrange,获取指定 key 的 value 值的子字符串。

redis 127.0.0.1:> get name
"HongWan@126.com"
redis 127.0.0.1:> getrange name
"HongWan"

8 mget,一次获取多个 key 的值,如果对应 key 不存在,则对应返回 nil。

redis 127.0.0.1:> mget key1 key2 key3
) "HongWan1"
) "HongWan2"
) (nil)

9 incr,对 key 的值做加加操作,并返回新的值。注意 incr 一个不是 int 的 value 会返回错误,incr 一个不存在的 key,则设置 key 为 1。

redis 127.0.0.1:> set age
OK
redis 127.0.0.1:> incr age
(integer)
redis 127.0.0.1:> get age
""

10 incrby,同 incr 类似,加指定值 ,key 不存在时候会设置 key,并认为原来的 value 是 0

redis 127.0.0.1:> get age
""
redis 127.0.0.1:> incrby age
(integer)

11 decr,对 key 的值做的是减减操作,decr 一个不存在 key,则设置 key 为-1

12 decrby,同 decr,减指定值。

13 append,给指定 key 的字符串值追加 value,返回新字符串值的长度。

redis 127.0.0.1:> append name @.com
(integer)
redis 127.0.0.1:> get name
"HongWan@126.com"

14 strlen,取指定 key 的 value 值的长度。

redis 127.0.0.1:> get name
"HongWan_new"
redis 127.0.0.1:> strlen name
(integer)

redis 基本概览的更多相关文章

  1. redis基准性能测试

    1 测试目的 了解redis在不同情况下的性能表现,并分析其性能瓶颈,找出相应的解决方案. 2 redis基准测试概览 运行下列命令可以了解自己的redis服务器的基本性能指标. 通过loopback ...

  2. ELK 环境搭建总结

    开始动手前的说明 我搭建这一套环境的时候是基于docker搭建的,用到了docker-compose,所以开始前要先安装好docker . docker-compose,并简单的了解docker . ...

  3. redis概览

    Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串 ...

  4. 【Redis】基础学习概览【汇总】

    一.概述 1.1 简介 1.2 Redis单线程好处 1.3 单线程弊端 1.4 Redis应用场景 二.安装.开启以及关闭 三.Redis基本数据类型 四.SpringBoot整合Redis 五.R ...

  5. 探索Redis设计与实现1:Redis 的基础数据结构概览

    本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...

  6. Redis系列(五)-Opserver的监控

    阅读目录: 基本介绍 使用配置 部署实例 面板属性 基本介绍 Opserver是Stack Exchange的一个开源监控系统,基于Net.MVC开发,所以Net程序员可以轻松基于它二次开发.它主要监 ...

  7. Redis命令大全&中文解释&在线测试命令工具&在线中文文档

    在线测试命令地址:http://try.redis.io/ 官方文档:http://redis.io/commands http://redis.io/documentation Redis 命令参考 ...

  8. Redis哈希表的实现要点

    Redis哈希表的实现要点 哈希算法的选择 针对不同的key使用不同的hash算法,如对整型.字符串以及大小写敏感的字符串分别使用不同的hash算法: 整型的Hash算法使用的是Thomas Wang ...

  9. 【读书笔记】Redis入门

    1:Redis概览 Remote Dictionary Server 远程字典服务 Redis是基于内存的存储 在一台普通的笔记本上,Redis每秒的读取速度可以达到10万 内存读取数据,断电的时候数 ...

随机推荐

  1. 拼接多个 wchar_t *

      /* wcscat example */ #include <wchar.h>   int main () { wchar_t wcs[80]; wcscpy (wcs,L" ...

  2. Run Repository Creation Utility (RCU) for Oracle Identity Management components

    Run Repository Creation Utility (RCU) for Oracle Identity Management components         Installing O ...

  3. matlab工作空间,变量的保存和载入

    对于工作空间中变量的保存和载入可以使用save和load命令,详细的使用方法通过help指令获取(help save,help load). ​两条指令最常用的情况为: 1.% 保存整个工作空间至指定 ...

  4. 火狐浏览器Firefox Firefox中的xpi文件是什么

    firefox中的xpi文件是什么? 问一下 最佳答案 XPI是什么? firefox中的xpi实际上类似于IE中的插件或扩展(如Flash插件等). 格式一般为.Zip, 由XUL.Javascri ...

  5. 心电图html js控件

    https://github.com/joakimkemeny/jke.d3.ecg/tree/master/demo/js

  6. POJ - 1325 Machine Schedule 二分图 最小点覆盖

    题目大意:有两个机器,A机器有n种工作模式,B机器有m种工作模式,刚開始两个机器都是0模式.假设要切换模式的话,机器就必须的重新启动 有k个任务,每一个任务都能够交给A机器的i模式或者B机器的j模式完 ...

  7. 算法笔记_111:第五届蓝桥杯软件类省赛真题(Java本科A组)试题解答

     目录 1 猜年龄 2 李白打酒 3 神奇算式 4 写日志 5 锦标赛 6 六角填数 7 绳圈 8 兰顿蚂蚁 9 斐波那契 10 波动数列   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路 ...

  8. LDA主题模型浅析

    上个月参加了在北京举办SIGKDD国际会议,在个性化推荐.社交网络.广告预测等各个领域的workshop上都提到LDA模型,感觉这个模型的应用挺广泛的,会后抽时间了解了一下LDA,做一下总结: (一) ...

  9. ehcache.xml的配置详解和示例

    <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLoc ...

  10. Tomcat訪问日志浅析

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs" ...