发表于: 2020-07-10 20:45:13

1 1890


今天完成的事情:redis的学习。
明天计划的事情:任务六的收尾工作
遇到的问题:项目运行问题,自己tomcat正常启动后,404找不到。

Artifact testApp4:war exploded: Error during artifact deployment. See server log for details.

收获:

Redis

1. redis简介

redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。

Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。

Redis不仅仅支持简单的key-value类型的数据,同时还提供list, set, zset, hash等数据结构的存储。

Redis支持数据的备份,即master-slave模式的数据备份。

性能极高-丰富数据类型-所有操作原子性-其他特性(通知,key过期)

2. redis linux安装

https://www.runoob.com/redis/redis-install.html

下载安装

$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz

$ tar xzf redis-2.8.17.tar.gz 

$ cd redis-2.8.17

$ make

启动,下面这种启动方式,使用默认配置。

$ cd src    

$ ./redis-server

如果要加载指定的配置

$ cd src 

$ ./redis-server ../redis.conf

启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了。 

第一步先修改redis.conf,修改 daemonize no 为 daemonize yes ,这样就可以默认启动就后台运行

然后再加载配置启动

$ ./redis-cli 

redis> set foo bar 

OK 

redis> get foo"bar"


3.Redis命令

3.1 ping检测redis服务是否启动,返回PONG就是成功

redis 127.0.0.1:6379> ping

3.2 set设置键并给定值,get就是获取值

这儿中文乱码了,我们要在 redis-cli 后面加上 --raw

redis-cli --raw

3.3 键相关的命令

序号命令及描述
1DEL key
该命令用于在 key 存在时删除 key。
2DUMP key
序列化给定 key ,并返回被序列化的值。
3EXISTS key
检查给定 key 是否存在。
4EXPIRE key seconds
为给定 key 设置过期时间,以秒计。
5EXPIREAT key timestamp
EXPIREAT 的作用和 EXPIRE 类似,都用于为 key 设置过期时间。 不同在于 EXPIREAT 命令接受的时间参数是 UNIX 时间戳(unix timestamp)。
6PEXPIRE key milliseconds
设置 key 的过期时间以毫秒计。
7PEXPIREAT key milliseconds-timestamp
设置 key 过期时间的时间戳(unix timestamp) 以毫秒计
8KEYS pattern
查找所有符合给定模式( pattern)的 key 。
9MOVE key db
将当前数据库的 key 移动到给定的数据库 db 当中。
10PERSIST key
移除 key 的过期时间,key 将持久保持。
11PTTL key
以毫秒为单位返回 key 的剩余的过期时间。
12TTL key
以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。
13RANDOMKEY
从当前数据库中随机返回一个 key 。
14RENAME key newkey
修改 key 的名称
15RENAMENX key newkey
仅当 newkey 不存在时,将 key 改名为 newkey 。
16SCAN cursor [MATCH pattern] [COUNT count]
迭代数据库中的数据库键。
17TYPE key
返回 key 所储存的值的类型。

3.4存储类型。String的取存命令和上面差不多

Hash就是在普通命令前加了H,部分命令如下

序号命令及描述
1HDEL key field1 [field2]
删除一个或多个哈希表字段
2HEXISTS key field
查看哈希表 key 中,指定的字段是否存在。
3HGET key field
获取存储在哈希表中指定字段的值。
4HGETALL key
获取在哈希表中指定 key 的所有字段和值

List列表

4LINDEX key index
通过索引获取列表中的元素
5LINSERT key BEFORE|AFTER pivot value
在列表的元素前或者后插入元素
6LLEN key
获取列表长度
7LPOP key
移出并获取列表的第一个元素
8LPUSH key value1 [value2]
将一个或多个值插入到列表头部
9LPUSHX key value
将一个值插入到已存在的列表头部
10LRANGE key start stop
获取列表指定范围内的元素
11LREM key count value
移除列表元素
12LSET key index value
通过索引设置列表元素的值


3.5 set集合,S开头

序号命令及描述
1SADD key member1 [member2]
向集合添加一个或多个成员
2SCARD key

获取集合的成员数

SMEMBERS key
返回集合中的所有成员

3.6 有序集合(sorted set)Z开头

序号命令及描述
1ZADD key score1 member1 [score2 member2]
向有序集合添加一个或多个成员,或者更新已存在成员的分数
2ZCARD key
获取有序集合的成员数

7ZRANGE key start stop [WITHSCORES]
通过索引区间返回有序集合指定区间内的成员






返回列表 返回列表
评论

    分享到