网站开发引发的官司百度识图查另一半情头

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

网站开发引发的官司,百度识图查另一半情头,企业网络营销推广方法,dedecms 迁移 wordpress前提#xff1a;#xff08;key代表键#xff09; Redis常用的命令 命令作用keys *查看当前库所有的keyexists key判断某个key是否存在type key查看key是什么类型del key 删除指定的keyunlink key非阻塞删除#xff0c;仅仅将keys从keyspace元数据中删除#xff0c;真正的…前提key代表键 Redis常用的命令 命令作用keys *查看当前库所有的keyexists key判断某个key是否存在type key查看key是什么类型del key 删除指定的keyunlink key非阻塞删除仅仅将keys从keyspace元数据中删除真正的删除会在后续异步中操作。ttl key 查看还有多少秒过期-1表示永不过期-2表示已过期expire key 秒钟为给定的key设置过期时间move key dbindex[0-15]将当前数据库的key移动到给定的数据库db中select dbindex[0-15]切换数据库【0-15】,默认为0dbsize查看当前数据库key的数量flushdb清空当前库慎用flushall通杀全部库慎用 两个删除操作的区别unlink key  和 del keydel key是同步操作执行时会立即阻塞当前线程直到键被删除完成。unlink key是异步操作它发起删除请求后不会阻塞线程而是让删除操作在后台进行不会立即返回键是否已成功删除。这样在处理大量键删除时可以避免阻塞导致性能下降。 1.Redis字符串String string是redis最基本的类型一个key对应一个value一个redis中字符串value最多可以是512M string类型是二进制安全的意思是redis的string可以包含任何数据比如jpg图片或者序列化的对象 。 1设置键值对 set key value [NX|XX] [GET] [EX seconds|PX milliseconds|EXAT unix-time-seconds|PXAT unix-time-milliseconds|KEEPTTL] 相关参数介绍 NX不存在时创建 XX存在时创建会覆盖前面的值相当于修改k的值 2keepttl作用修改一个k的值会将原来的过期时间覆盖值变了但是过期时间也变了keepttl可以保留原来的过期时间只改变值但是过期时间不变 例keepttl的使用 127.0.0.1:6379 set k1 v1 ex 30 设置k1过期时间为30s OK 127.0.0.1:6379 set k1 v1kppl keepttl 修改k1的值后面使用keepttl OK 127.0.0.1:6379 ttl k1 获取k1过期时间 (integer) 8 127.0.0.1:6379 get k1 v1kppl 3在Java代码中获取当前Unix时间 System.out.println(Long.toString(System.currentTimeMillis()/1000L)); 4同时设置获取多个值mset 使用 127.0.0.1:6379 mset k1 v1 k2 v2 OK 127.0.0.1:6379 keys *

  1. k2
  2. k1 127.0.0.1:6379 msetnx k2 v2 k3 v3 ———-失败 (integer) 0 127.0.0.1:6379 keys *
  3. k2
  4. k1注意msetnx与事务类似同成功同失败NX不存在时创建但是k2已经存在 5获取和设置指定区间范围内的值getrange 和 setrange
    使用 127.0.0.1:6379 get k1 abcdefghijk 127.0.0.1:6379 getrange k1 0 -1 0到-1代表全部 abcdefghijk 127.0.0.1:6379 getrange k1 0 3 abcd 127.0.0.1:6379 setrange k1 1 xxxx (integer) 11 127.0.0.1:6379 get k1 axxxxfghijk 6数值增减incr  、incrby  、decr 、decrby 例如 127.0.0.1:6379 set k1 100 OK 127.0.0.1:6379 get k1 100 127.0.0.1:6379 incr k1 (integer) 101 127.0.0.1:6379 incr k1 (integer) 102 127.0.0.1:6379 incrby k1 3 指定每次增加多少 (integer) 105 127.0.0.1:6379 incrby k1 3 (integer) 108 127.0.0.1:6379 decr k1 (integer) 107 127.0.0.1:6379 decr k1 (integer) 106 127.0.0.1:6379 decrby k1 3 指定每次减少多少 (integer) 103 127.0.0.1:6379 decrby k1 3 (integer) 100 7获取字符串长度和追加str 、appebd 例如 127.0.0.1:6379 set k1 abcd OK 127.0.0.1:6379 get k1 abcd 127.0.0.1:6379 strlen k1 (integer) 4 127.0.0.1:6379 append k1 xxxx (integer) 8 127.0.0.1:6379 get k1 abcdxxxx 8分布式锁setex key 过期时间 value 还有setnx 第一步set key value 第二步expire k 过期时间 上面的两个加起来等同于setex key 过期时间 value 例 127.0.0.1:6379 set k1 v1 OK 127.0.0.1:6379 expire k1 10 (integer) 1 127.0.0.1:6379 ttl k1 (integer) 6 127.0.0.1:6379 ttl k1 (integer) 2 127.0.0.1:6379 setex k1 10 vll OK 127.0.0.1:6379 ttl k1 (integer) 0 127.0.0.1:6379 setnx k1 v11 (integer) 1 127.0.0.1:6379 get k1 v11 127.0.0.1:6379 setnx k1 v11 (integer) 0 9先获取再设置值getset 127.0.0.1:6379 getset k1 haha 先获取到原来的值v11再修改为haha v11 127.0.0.1:6379 get k1 haha 注意getset命令等同于 set key value get ,例 127.0.0.1:6379 get k1 aaa 127.0.0.1:6379 set k1 haha get aaa 127.0.0.1:6379 get k1 haha 2.Redis列表List Redis列表是简单的字符串列表按照插入顺序排序。你可以添加一个元素到列表的头部左边或者尾部右边 它的底层实际是个双端链表最多可以包含 2^32 - 1 个元素 (4294967295, 每个列表超过40亿个元素) 1创建和遍历列表(lpush 、rpush、lrange) 127.0.0.1:6379 LPUSH list1 1 2 3 4 5 6 从左边加入 (integer) 6 127.0.0.1:6379 RPUSH list2 1 2 3 4 5 6 从右边加入 (integer) 6 127.0.0.1:6379 LRANGE list1 0 -1 遍历
  5. 6
  6. 5
  7. 4
  8. 3
  9. 2
  10. 1 127.0.0.1:6379 LRANGE list2 0 -1 遍历
  11. 1
  12. 2
  13. 3
  14. 4
  15. 5
  16. 6 2弹出元素lpop、rpop 127.0.0.1:6379 LPOP list1 左边弹出一个 6 127.0.0.1:6379 RPOP list1 右边弹出一个 1 127.0.0.1:6379 LRANGE list1 0 -1
  17. 5
  18. 4
  19. 3
  20. 2 3从上到下获取指定的元素lindex 127.0.0.1:6379 LINDEX list1 2 3 127.0.0.1:6379 LINDEX list1 0 5 4获取列表中元素的个数llen 127.0.0.1:6379 LLEN list1 (integer) 4 5删除N个值等于v1的元素lrem key 数字N 给定的值v1 127.0.0.1:6379 lpush list1 1 1 1 2 2 2 3 4 5 6 (integer) 10 127.0.0.1:6379 lrem list1 2 2 删除2个2 (integer) 2 127.0.0.1:6379 lrange list1 0 -1
  21. 6
  22. 5
  23. 4
  24. 3
  25. 2
  26. 1
  27. 1
  28. 1 6截取指定范围的值再赋值给keyltrim key 开始index 结束index 127.0.0.1:6379 lrange list1 0 -1
  29. 6
  30. 5
  31. 4
  32. 3
  33. 2
  34. 1 127.0.0.1:6379 ltrim list1 0 2 OK 127.0.0.1:6379 lrange list1 0 -1
  35. 6
  36. 5
  37. 4 7将列表key1中的值加到列表key2中去rpoplpush 列表key1 列表key2 127.0.0.1:6379 lrange list2 0 -1
  38. 1
  39. 2
  40. 3
  41. 4
  42. 5
  43. 6 127.0.0.1:6379 rpoplpush list1 list2 将list1中的4加到list2中去 4 127.0.0.1:6379 lrange list1 0 -1
  44. 6
  45. 5 127.0.0.1:6379 lrange list2 0 -1
  46. 4
  47. 1
  48. 2
  49. 3
  50. 4
  51. 5
  52. 6 8修改某个索引处的值lset key index value 127.0.0.1:6379 lset list2 2 9 将索引2的值改为9 OK 127.0.0.1:6379 lrange list2 0 -1
  53. 4
  54. 1
  55. 9
  56. 3
  57. 4
  58. 5
  59. 6 9插入新的值linsert key before/after 已有的值 插入新的值 127.0.0.1:6379 lrange list2 0 -1
  60. 4
  61. 1
  62. 9
  63. 3
  64. 4
  65. 5
  66. 6 127.0.0.1:6379 linsert list2 after 9 10 在9后面加一个10 (integer) 8 127.0.0.1:6379 lrange list2 0 -1
  67. 4
  68. 1
  69. 9
  70. 10
  71. 3
  72. 4
  73. 5
  74. 6 默认插入前一个 127.0.0.1:6381 linsert keylist after 3 6 (integer) 5 127.0.0.1:6381 lrange keylist 0 -1 keylist里面有两个3只在第一个3后面加入了6
  75. 3
  76. 6
  77. 2
  78. 3
  79. 13.Redis哈希Hash 简单说就是MapString,MapObject,Object Redis hash 是一个 string 类型的 field字段 和 value值 的映射表hash 特别适合用于存储对象。 Redis 中每个 hash 可以存储 2^32 - 1 键值对40多亿 1hset为一个键赋值hget获取值 127.0.0.1:6381 hset user1 name tom age 18 (integer) 2127.0.0.1:6381 hget user1 name tom2hmset为多个属性赋值hmget获取多个属性的值 127.0.0.1:6381 hmset user2 name jack age 19 OK 127.0.0.1:6381 hmget user2 name age
  80. jack
  81. 193hgetall获取全部hdel删除某个属性 127.0.0.1:6381 hgetall user2
  82. name
  83. jack
  84. age
  85. 19 127.0.0.1:6381 hdel user1 name (integer) 14hlen获取key的长度 127.0.0.1:6381 hlen user2 (integer) 25hexists key判断key中有没有某一个属性 127.0.0.1:6381 hexists user2 name (integer) 1 127.0.0.1:6381 hexists user2 email (integer) 06hkeys获取全部的属性 hvals获取全部属性对应的值 127.0.0.1:6381 hkeys user2
  86. name
  87. age 127.0.0.1:6381 hvals user2
  88. jack
  89. 197hincrby属性增加hincrbyfloat增加小数 127.0.0.1:6381 hincrby user2 age 2 (integer) 21 127.0.0.1:6381 hget user2 age 21 127.0.0.1:6381 hincrbyfloat user2 age 2.3 23.3 127.0.0.1:6381 hget user2 age 23.34.Redis集合Set 无重复 1sadd key member1 【member2】:向集合中加入多个成员 127.0.0.1:6381 sadd set1 1 1 2 2 3 4 5 6 (integer) 6 127.0.0.1:6381 sadd set2 3 4 5 6 7 8 (integer) 62scard key 获取集合成员数 127.0.0.1:6381 scard set1 (integer) 63sdiff key1 【key2】返回给定集合的差集 127.0.0.1:6381 sdiff set1 set2
  90. 1
  91. 24sdiffstore destination key1 【key2】返回给定集合的差集并存储到destination中 127.0.0.1:6381 sdiffstore set3 set1 set2 将结果放入set3 (integer) 25sinter key1 【key2】返回给定集合的交集 127.0.0.1:6381 sinter set1 set2
  92. 3
  93. 4
  94. 5
  95. 66sinterstore destination key1【key2】返回给定集合的交集并存储到destination中 127.0.0.1:6381 sinterstore set3 set1 set2 (integer) 47sismember key member判断member是不是key的成员 127.0.0.1:6381 sismember set1 1 (integer) 1 8smembers key返回集合中全部的成员 127.0.0.1:6381 smembers set1
  96. 1
  97. 2
  98. 3
  99. 4
  100. 5
  101. 6 9smove source destination member 将member元素从source集合移动到destination中 127.0.0.1:6381 smove set2 set1 8 (integer) 1 127.0.0.1:6381 smembers set1
  102. 1
  103. 2
  104. 3
  105. 4
  106. 5
  107. 6
  108. 8 10spop key 【count】 移除并返回集合中的某count个元素返回并删除 127.0.0.1:6381 spop set1 5 127.0.0.1:6381 spop set1 2
  109. 4
  110. 8 11srandmember key 【count】返回集合中一个或多个随机数但是并未删除 127.0.0.1:6381 srandmember set1 2
  111. 3
  112. 6 12srem key member1 【member2】移除集合中一个或多个成员 127.0.0.1:6381 srem set1 1 2 (integer) 2 127.0.0.1:6381 smembers set1
  113. 3
  114. 6 13sunion key1 【key2】返回给定集合的并集 127.0.0.1:6381 sunion set1 set2
  115. 3
  116. 4
  117. 5
  118. 6
  119. 7 14sunionstore destination key1 【key2】返回给定集合的并集存在destination中 127.0.0.1:6381 sunionstore set4 set1 set2 (integer) 5 127.0.0.1:6381 smembers set4
  120. 3
  121. 4
  122. 5
  123. 6
  124. 7