当前位置: 首页 > news >正文

网站运营情况怎么写可视化网页制作工具

网站运营情况怎么写,可视化网页制作工具,什么站做咨询网站好,网站建设要哪些seo目录 Redis的数据结构: Redis命令: 通用命令:(通用指令是部分数据类型的,都可以使用的指令) KEYS查询命令: DEL删除命令: EXISTS判断命令: EXPIPE有效期设置命令&…

目录

Redis的数据结构:

Redis命令:

通用命令:(通用指令是部分数据类型的,都可以使用的指令)

KEYS查询命令:

DEL删除命令:

EXISTS判断命令:

EXPIPE有效期设置命令:

TTL查看剩余期限命令:

String类型:

String的3种类型:

String类型的常见命令:

SET插入数据命令:

MSET多重插入命令:

GET获取数据命令:

MGET多重获取命令:

INCR自增命令:

INCRBY指定自增命令:

INCRBYFLOAT指定浮点数自增命令:

SETNX添加String类型键值对命令(前提是key不存在,否则不执行)

SETEX添加Sting类型键值对命令(指定有效期)

Redis的key的格式:

问题:Redis没有类似Mysql的Table的概念,我们该如何区分不同类型的key呢?

key的结构:

Hash类型

为什么需要使用Hash类型呢? 

Hash类型的常见命令:

HSET key field value:添加或者修改hash类型的key和fired的值

HGET key field:获取一个hash类型的key的field的值

HMSET:添加多个hash类型的key的field值

HMGET:获取多个hash类型的key的field值

HGETALL:获取一个hash类型的key中所有的field和value

HKEYS:获取一个hash类型的key中的所有的field

HVALS:获取一个hash类型的key中的所有的value

HINCRBY:让一个hash类型key的字段值自增并指定步长

HSETNX:添加一个hash类型的key的field值,前提是这个field不存在,否则不执行


参考视频:黑马程序员Redis入门到实战教程,深度透析redis底层原理+redis分布式锁+企业解决方案+黑马点评实战项目

Redis的数据结构:

我们能通过官方网站提供的文档来了解我们需要使用的redis数据类型

或者是使用命令help来查看

Redis命令:

通用命令:(通用指令是部分数据类型的,都可以使用的指令)

192.168.1.209:6379> help @generic

KEYS查询命令:

我们能通过help [command]可以查看一个命令的具体用法

192.168.1.209:6379> help KEYSKEYS patternsummary: Find all keys matching the given patternsince: 1.0.0group: generic192.168.1.209:6379> 

使用KEYS命令查看所有的key 

192.168.1.209:6379> SET name "claylpf"
OK
192.168.1.209:6379> SET id 66
OK
192.168.1.209:6379> KEYS *
1) "id"
2) "name"
192.168.1.209:6379> 

例如:

DEL删除命令:

具体用法 

192.168.1.209:6379> help DELDEL key [key ...]summary: Delete a keysince: 1.0.0group: generic192.168.1.209:6379> 

 例如:

192.168.1.209:6379> DEL id
(integer) 1
192.168.1.209:6379> KEYS *
1) "name"
192.168.1.209:6379> 

多重删除

192.168.1.209:6379> DEL k1 k2 k3
(integer) 3
192.168.1.209:6379> KEYS *
1) "age"
2) "name"
192.168.1.209:6379> 

EXISTS判断命令:

具体用法:

192.168.1.209:6379> help EXISTSEXISTS key [key ...]summary: Determine if a key existssince: 1.0.0group: generic192.168.1.209:6379> 

 如:

192.168.1.209:6379> KEYS *
1) "age"
2) "name"
192.168.1.209:6379> EXISTS age
(integer) 1
192.168.1.209:6379> EXISTS id
(integer) 0
192.168.1.209:6379> 

EXPIPE有效期设置命令:

具体用法:

192.168.1.209:6379> help EXPIREEXPIRE key secondssummary: Set a key's time to live in secondssince: 1.0.0group: generic192.168.1.209:6379> 

例如:

192.168.1.209:6379> EXPIRE age 20
(integer) 1
192.168.1.209:6379> TTL age
(integer) 13
192.168.1.209:6379> 

TTL查看剩余期限命令:

具体用法:

192.168.1.209:6379> help TTLTTL keysummary: Get the time to live for a keysince: 1.0.0group: generic192.168.1.209:6379> 

例如:

当我们使用TTL查看到剩余时间为-1的时候,他表示的就是永久有效

192.168.1.209:6379> TTL age
(integer) 13
192.168.1.209:6379> TTL name
(integer) -1
192.168.1.209:6379> KEYS *   # 因为age的有效时间到了,所以age消失了,而只剩下name的永久有效
1) "name"
192.168.1.209:6379> 

String类型:

String的3种类型:

其中value是字符串,不过根据字符串的格式不同,可以分为3类:

注:不管是那种格式,底层都是字节数组形式存储的,只不过是编码的方式不同。字符串类型的最大空间不能超过512mb

String类型的常见命令:

SET插入数据命令:

我们能通过help [command]可以查看一个命令的具体用法

具体用法

192.168.1.209:6379> help SETSET key value [EX seconds|PX milliseconds|EXAT timestamp|PXAT milliseconds-timestamp|KEEPTTL] [NX|XX] [GET]summary: Set the string value of a keysince: 1.0.0group: string192.168.1.209:6379> 

插入数据

192.168.1.209:6379> SET age 20
OK
192.168.1.209:6379> KEYS a*
1) "age"
192.168.1.209:6379> 

MSET多重插入命令:

多重插入

192.168.1.209:6379> MSET k1 v1 k2 v2 k3 v3
OK
192.168.1.209:6379> KEYS *
1) "age"
2) "k1"
3) "k3"
4) "name"
5) "k2"
192.168.1.209:6379> 

GET获取数据命令:

具体用法:

192.168.1.209:6379> help GETGET keysummary: Get the value of a keysince: 1.0.0group: string192.168.1.209:6379> 

 例如:

192.168.1.209:6379> GET name
"claylpf"
192.168.1.209:6379> 

MGET多重获取命令:

192.168.1.209:6379> MSET k1 v1 k2 v2 k3 v3
OK
192.168.1.209:6379> KEYS *
1) "k1"
2) "k3"
3) "name"
4) "k2"
192.168.1.209:6379> MGET k1 k2 k3
1) "v1"
2) "v2"
3) "v3"
192.168.1.209:6379> 

INCR自增命令:

192.168.1.209:6379> GET age
"18"
192.168.1.209:6379> INCR age
(integer) 19
192.168.1.209:6379> INCR age
(integer) 20
192.168.1.209:6379> 

INCRBY指定自增命令:

192.168.1.209:6379> GET age
"20"
192.168.1.209:6379> INCRBY age 2
(integer) 22
192.168.1.209:6379> INCRBY age 2
(integer) 24
192.168.1.209:6379> INCRBY age 3
(integer) 27
192.168.1.209:6379> 

也可以实现自减操作

192.168.1.209:6379> INCRBY age 3
(integer) 27
192.168.1.209:6379> INCRBY age -1
(integer) 26
192.168.1.209:6379> INCRBY age -1
(integer) 25
192.168.1.209:6379> INCRBY age -2
(integer) 23
192.168.1.209:6379> 

INCRBYFLOAT指定浮点数自增命令:

192.168.1.209:6379> set float1 10.11
OK
192.168.1.209:6379> GET float1
"10.11"
192.168.1.209:6379> INCRBYFLOAT float1 0.5
"10.61"
192.168.1.209:6379> INCRBYFLOAT float1 0.5
"11.11"
192.168.1.209:6379> INCRBYFLOAT float1 -1.5
"9.61"
192.168.1.209:6379> INCRBYFLOAT float1 -1.5
"8.11"
192.168.1.209:6379> 

SETNX添加String类型键值对命令(前提是key不存在,否则不执行)

具体用法:

192.168.1.209:6379> help SETNXSETNX key valuesummary: Set the value of a key, only if the key does not existsince: 1.0.0group: string192.168.1.209:6379> 

例如:

192.168.1.209:6379> SETNX name2 lisi
(integer) 1
192.168.1.209:6379> get name2 
"lisi"
192.168.1.209:6379> SETNX name lisi2
(integer) 0
192.168.1.209:6379> get name 
"claylpf"
192.168.1.209:6379> 

SETEX添加Sting类型键值对命令(指定有效期)

具体用法:

192.168.1.209:6379> help SETEXSETEX key seconds valuesummary: Set the value and expiration of a keysince: 2.0.0group: string192.168.1.209:6379> 

例如:

192.168.1.209:6379> SETEX name3 30 jack
OK
192.168.1.209:6379> TTL name3
(integer) 24
192.168.1.209:6379> TTL name3
(integer) 21
192.168.1.209:6379> TTL name3
(integer) 19
192.168.1.209:6379> GET name3
"jack"
192.168.1.209:6379> 

Redis的key的格式:

问题:Redis没有类似Mysql的Table的概念,我们该如何区分不同类型的key呢?

例如:当我们需要存储用户、商品的信息到redis,如果有一个用户的id是1,而有一个商品的id恰好是也是1,我们应该如何解决这个问题呢。

我们可以通过拼接key的结构实现多层级结构

key的结构:

这个格式并非固定的,我们也可以根据自己的需求来删除或者添加词条。

实操:

Hash类型

为什么需要使用Hash类型呢? 

String结构是将对象序列化为JSON字符串后存储,当需要修改对象某个字段时很不方便

因此,我们需要使用到Hash类型。

Hash结构可以将对象中的每个字段独立存储,可以针对单个字段做CRUD(增删改查)

  

Hash类型的常见命令:

HSET key field value:添加或者修改hash类型的key和fired的值

192.168.1.209:6379> HSET heima:user:3 name lucy
(integer) 1
192.168.1.209:6379> HSET heima:user:3 age 22
(integer) 1
192.168.1.209:6379> HSET heima:user:4 name band
(integer) 1
192.168.1.209:6379> HSET heima:user:4 age 23
(integer) 1
192.168.1.209:6379> KEYS heima*
1) "heima:user:4"
2) "heima:user:3"

HGET key field:获取一个hash类型的key的field的值

192.168.1.209:6379> HGET heima:user:3 name
"lucy"
192.168.1.209:6379> HGET heima:user:3 age
"22"
192.168.1.209:6379> HGET heima:user:4 name
"band"
192.168.1.209:6379> HGET heima:user:4 age
"23"
192.168.1.209:6379> 

HMSET:添加多个hash类型的key的field值

192.168.1.209:6379> HMSET heima:user:5 name clay age 24 sex man
OK
192.168.1.209:6379> HMGET heima:user:5 name age sex
1) "clay"
2) "24"
3) "man"
192.168.1.209:6379> 

HMGET:获取多个hash类型的key的field值

192.168.1.209:6379> HMSET heima:user:5 name clay age 24 sex man
OK
192.168.1.209:6379> HMGET heima:user:5 name age sex
1) "clay"
2) "24"
3) "man"
192.168.1.209:6379> 

HGETALL:获取一个hash类型的key中所有的field和value

192.168.1.209:6379> HGETALL heima:user:4
1) "name"
2) "band"
3) "age"
4) "23"
192.168.1.209:6379> HGETALL heima:user:5
1) "name"
2) "clay"
3) "age"
4) "24"
5) "sex"
6) "man"
192.168.1.209:6379> 

HKEYS:获取一个hash类型的key中的所有的field

192.168.1.209:6379> HKEYS heima:user:5
1) "name"
2) "age"
3) "sex"
192.168.1.209:6379> HKEYS heima:user:4
1) "name"
2) "age"
192.168.1.209:6379> 

HVALS:获取一个hash类型的key中的所有的value

192.168.1.209:6379> HVALS heima:user:4
1) "band"
2) "23"
192.168.1.209:6379> HVALS heima:user:5
1) "clay"
2) "24"
3) "man"
192.168.1.209:6379> 

HINCRBY:让一个hash类型key的字段值自增并指定步长

192.168.1.209:6379> HINCRBY heima:user:4 age 2
(integer) 25
192.168.1.209:6379> HINCRBY heima:user:4 age 2
(integer) 27
192.168.1.209:6379> HVALS heima:user:4
1) "band"
2) "27"
192.168.1.209:6379> HINCRBY heima:user:4 age -10
(integer) 17
192.168.1.209:6379> HVALS heima:user:4
1) "band"
2) "17"
192.168.1.209:6379> 

HSETNX:添加一个hash类型的key的field值,前提是这个field不存在,否则不执行

192.168.1.209:6379> HSETNX heima:user:4 sex woman
(integer) 1
192.168.1.209:6379> HGETALL heima:user:4
1) "name"
2) "band"
3) "age"
4) "17"
5) "sex"
6) "woman"
192.168.1.209:6379> HSETNX heima:user:5 sex woman
(integer) 0
192.168.1.209:6379> HGETALL heima:user:5
1) "name"
2) "clay"
3) "age"
4) "24"
5) "sex"
6) "man"
192.168.1.209:6379> 
http://www.zhongyajixie.com/news/37964.html

相关文章:

  • 渭南市网站建设品牌推广软文
  • 网站维护客户网络平台推广方式
  • 张家口网站建设价格女教师遭网课入侵视频大全
  • 门户网站建设方案招标文件百度扫一扫
  • 河北省建设厅网站手机版sem优化师
  • wordpress降低版本seo大全
  • 摄影网站建设文案著名的营销成功的案例
  • 设计一个网站开发方案今日热搜榜排行榜
  • 制作一个网站官网推广软件的app
  • hexo wordpress主题桔子seo查询
  • 莒县网站建设公司湖州网站seo
  • 织梦做的网站能做seo吗免费自学电商教程
  • 鄂州网站建设报价百度快照网站
  • 为什么进不了中国建设银行网站百度搜索关键词推广
  • wordpress mysql配置泰安seo
  • 手机做logo用什么网站百度开放平台登录
  • 娱乐公司网站建站背景介绍百度站长官网
  • 一个网站做数据分析要多少钱必应搜索引擎入口官网
  • 网页小游戏修改器甘肃省seo关键词优化
  • 网站设计就业怎么样ip子域名大全
  • 网站做标签什么是网络营销推广
  • 佛山自定义网站建设成都网络推广中联无限
  • 中小企业网站建设 网络营销成都网站设计公司
  • 怎样创建一个国际网站seo推广哪家服务好
  • 网站建设与维护费石家庄谷歌seo公司
  • pc网站如何做sp最近国内新闻
  • 开发公司安全管理组织机构图广东宣布即时优化调整
  • 做个网站做蔬菜批发最近国际新闻大事20条
  • 政府网站建站流程深圳知名网络优化公司
  • 五金制品东莞网站建设百度信息流广告怎么收费