redis 基本概览
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 基本概览的更多相关文章
- redis基准性能测试
1 测试目的 了解redis在不同情况下的性能表现,并分析其性能瓶颈,找出相应的解决方案. 2 redis基准测试概览 运行下列命令可以了解自己的redis服务器的基本性能指标. 通过loopback ...
- ELK 环境搭建总结
开始动手前的说明 我搭建这一套环境的时候是基于docker搭建的,用到了docker-compose,所以开始前要先安装好docker . docker-compose,并简单的了解docker . ...
- redis概览
Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串 ...
- 【Redis】基础学习概览【汇总】
一.概述 1.1 简介 1.2 Redis单线程好处 1.3 单线程弊端 1.4 Redis应用场景 二.安装.开启以及关闭 三.Redis基本数据类型 四.SpringBoot整合Redis 五.R ...
- 探索Redis设计与实现1:Redis 的基础数据结构概览
本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...
- Redis系列(五)-Opserver的监控
阅读目录: 基本介绍 使用配置 部署实例 面板属性 基本介绍 Opserver是Stack Exchange的一个开源监控系统,基于Net.MVC开发,所以Net程序员可以轻松基于它二次开发.它主要监 ...
- Redis命令大全&中文解释&在线测试命令工具&在线中文文档
在线测试命令地址:http://try.redis.io/ 官方文档:http://redis.io/commands http://redis.io/documentation Redis 命令参考 ...
- Redis哈希表的实现要点
Redis哈希表的实现要点 哈希算法的选择 针对不同的key使用不同的hash算法,如对整型.字符串以及大小写敏感的字符串分别使用不同的hash算法: 整型的Hash算法使用的是Thomas Wang ...
- 【读书笔记】Redis入门
1:Redis概览 Remote Dictionary Server 远程字典服务 Redis是基于内存的存储 在一台普通的笔记本上,Redis每秒的读取速度可以达到10万 内存读取数据,断电的时候数 ...
随机推荐
- Linux kernel模块管理相关详解
Linux内核模块化设计 1. Linux内核设计:单内核.模块化(动态装载和卸载) (1) Linux:单内核设计,但充分借鉴了微内核体系的设计的优点:为内核引入了模块化机制:(2) 内核的组成部分 ...
- 重新安装 RCU-数据库 2014-11-22
删除数据库Endv(原RCU数据库) 重建数据库为LLS(新RCU数据库)..略.. Database Control URL 为 https://www:1158/em 管理资料档案库已置于安全模式 ...
- Discuz常见小问题-修改了模块,如何重新移动原有模块的帖子
如果还能找到这个帖子(比如用搜索关键字的方法,我们看到他现在已经在CodeSys控制器的目录下,可以点击那个CodeSys控制器的超链接看到里面所有帖子),打开这个帖子之后可以点击移动,然后选择新的目 ...
- 优秀web资源
http://www.filewatcher.com 一步一步asp.net_页面静态化管理 http://www.cnblogs.com/ylwn817/articles/2006923.html ...
- 2.6.33中关于at91sam9260的i2c controller驱动的问题
在为at91sam9260移植2.6.33内核的I2C时,直接用driver/bus/i2c-at91.c这个iic的adapter驱动是不能用的,而且在makemenuconfig时,在device ...
- 从零开始学JavaScript一(简介)
概要:JavaScript的组成. 各个组成部分的作用 . 一.JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成 Javascript ECMAScript(核心) DOM ...
- java线程具体解释
线程与进程的差别 (1)程序是一段静态的代码,进程是程序的一次动态执行过程.它是操作系统资源调度的基本单位.线程是比进程更小的执行单位.一个进程在其执行过程中,能够产生多个线程.所以又称线程为&quo ...
- Knockout自定义绑定my97datepicker
/* my97datepicker 时间格式'yyyy-MM-dd HH-mm-ss' */ ko.bindingHandlers.datetimes = { init: function (elem ...
- PLY格式介绍
PLY是一种电脑档案格式,全名为多边形档案(Polygon File Format)或 斯坦福三角形档案(Stanford Triangle Format). 史丹佛大学的 The Digital ...
- 坦克大战-C语言-详注版
代码地址如下:http://www.demodashi.com/demo/14259.html 坦克大战-C语言-详注版 概述 本文详述了C语言版坦克大战游戏的原理以及实现方法,对游戏代码进行了详细的 ...