String

  1. String是Redis最基本的数据类型(较常用),一个key对应一个value
  2. string类型是二进制安全的,Redis的string可以包含任何数据
  3. 一个Redis中字符串value最多是512M

set和setnx的区别:

set: 如果不存在key,则直接创建,如果存在,将key对应的value值覆盖掉

setnx:如果不存在key,则直接创建,如果存在对key进行操作,返回的结果是0,相当于false

incr key 操作的原子性

  • 所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)。
  • 在单线程中, 能够在单条指令中完成的操作都可以认为是" 原子操作",因为中断只能发生于指令之间。
  • 在多线程中,不能被其它进程(线程)打断的操作就叫原子操作。
  • Redis单命令的原子性主要得益于Redis的单线程

l  思考: java中i++是否是原子操作?

   i++并不具有原子性

   i++有三个步骤:

    •   取值
    •   运算
    •   赋值
 get <key>  查询对应键值
 set <key> <value>  添加键值对
 append <key> <value>  将给定的value追加到原值的末尾
 strlen <key>  获取值的长度
 senx <key> <value>  只有在key不存在时设置key的值
 incr <key>  将key中存储的数字值增1,只能对数字值操作,如果为空新增值为1
 decr <key>  将key中存储的数字值减1,只能对数字值操作,如果为空新增至为-1
 incrby/decrby <key> 步长 将key中存储的数字值增减,自定义步长
mset <key1> <value1> <key2> <value2> 同时设置一个或者多个key-value对
mget <key1> <key2> 同时获取一个或者多个value
msetnx <key1> <value1> <key2> <value2> 同时设置一个或多个key-value对,当且仅当所有给定的key都不存在
getrange <key> <起始位置> <结束位置> 获得值的范围,类似java中的substring(包头包尾)
setrange <key> <起始位置> <value> 用<value>覆盖<key>所存储的字符串值,从<起始位置>开始
setex <key> <过期时间> <value> 设置键值的同时,设置过去时间,单位秒 
getset <key> <value> 以新换旧,设置了新值的同时获取旧值 

最新文章

  1. MongoDB的数据库基本操作(一)
  2. Leetcode 130 Surrounded Regions DFS
  3. vsPhere安装虚拟sm
  4. 30天,O2O速成攻略【8.30南京站】
  5. 关于 MySQL UTF8 编码下生僻字符插入失败/假死问题的分析
  6. UVa 120 (构造) Stacks of Flapjacks
  7. CentOS6.5安装MySQL及完全卸载
  8. Top 100 words for advanced learners.
  9. web 前端 shopnc项目 首页分类一开始做前端,我是拒绝的
  10. registered the JBDC driver [oracle.jdbc.OracleDriver] but failed to unregister it when the web application was stopped. (转)
  11. uva--165(邮资问题,dp)
  12. MySQL事件调度器event的使用
  13. Spark之MapReduce原理
  14. mybatis乱码
  15. centos中redis安装
  16. MRO
  17. IDEA添加源码包
  18. docker安装mongodb并备份
  19. ranch流程处理图
  20. IDEA运行android项目一直是同一个apk

热门文章

  1. cenos7 安装samba
  2. spring整合websocket,如何在服务端依赖注入service
  3. 巴塞尔问题(Basel problem)的多种解法
  4. SQL四种语言:DDL,DML,DCL,TCL 的区别
  5. Maven2: Missing artifact but jars are in place
  6. render(七)
  7. javascript当中静态方法和prototype用法
  8. JavaScript的流程控制
  9. Map中放入对象字符串转义问题
  10. LED Decorative Light Supplier - LED Environmental Decorative Lighting Application