zoukankan      html  css  js  c++  java
  • Redis:存储字符串(基本概念、命令)

    1、Redis存储String类型

    (1)基本概念

    一个键最大能存储512M的数据,value不仅可以使字符串还可以是数字,是包含很多种类型的特殊类型

    string类型是二进制安全的,意思是redis的string可以包含任意类型的数据,例如:图片的二进制存储、字符串、数值等

    (2)应用场景

    String可用于保存单个字符串或JSON字符串类型的数据

    因为String是二进制安全的,可以将一张图片作为二进制来存储

    计数器:计数粉丝数。因为redis的原子性,不用考虑线程安全的问题。即使有十个用户同时读取到一个数据,在他们进行加以操作后,数据的值增加的依旧是十

    2、String类型的命令

    (1)set和get实现字符串存取:

     键的名字相同,会对以前的值进行覆盖:

     (2)setnx命令:如果key不存在则赋值并返回1,如果已经存在则赋值并返回0

    127.0.0.1:6379> setnx zhai zzz
    (integer) 0
    127.0.0.1:6379> setnx qian zhhh
    (integer) 1
    127.0.0.1:6379> keys *
    1) "zhang"
    2) "qian"
    3) "zhao"
    4) "ZHAI"
    5) "huangzzz"
    6) "zhai"
    127.0.0.1:6379> get zhai
    "201001"
    127.0.0.1:6379> get qian
    "zhhh"

    可用于解决分布式锁的问题

    (3)get:取值命令,值存在的话返回值,不存在的话返回null

    127.0.0.1:6379> get zhai
    "201001"
    127.0.0.1:6379> get 123
    (nil)

    (4)getrange:取一个字符串的子字符串,下标从零开始,两个参数是偏移量

    127.0.0.1:6379> get zhai
    "201001"
    127.0.0.1:6379> getrange zhai 1 4
    "0100"

    (5)getset:设置key的值并返回key的原来的值

    127.0.0.1:6379> get zhai
    "201001"
    127.0.0.1:6379> getset zhai 123321
    "201001"
    127.0.0.1:6379> get zhai
    "123321"

    (6)strlen:获取长度

    127.0.0.1:6379> get zhai
    "123321"
    127.0.0.1:6379> strlen zhai
    (integer) 6

    (7)del:删除

    127.0.0.1:6379> keys *
    1) "zhang"
    2) "qian"
    3) "zhao"
    4) "ZHAI"
    5) "huangzzz"
    6) "zhai"
    127.0.0.1:6379> del huangzzz
    (integer) 1
    127.0.0.1:6379> keys *
    1) "zhang"
    2) "qian"
    3) "zhao"
    4) "ZHAI"
    5) "zhai"

    (8)批量读写

    批量写:

    127.0.0.1:6379> keys *
    1) "zhang"
    2) "qian"
    3) "zhao"
    4) "ZHAI"
    5) "zhai"
    127.0.0.1:6379> mset user1 zhai user2 zhang
    OK
    127.0.0.1:6379> keys *
    1) "zhang"
    2) "qian"
    3) "user1"
    4) "user2"
    5) "zhao"
    6) "ZHAI"
    7) "zhai"

    批量读:

    127.0.0.1:6379> mget zhang qian user1
    1) "202002"
    2) "zhhh"
    3) "zhai"

    (9)++操作:

     (10)--操作:

     (11)设定增量值

    加:

    127.0.0.1:6379> set num 12
    OK
    127.0.0.1:6379> get num 
    "12"
    127.0.0.1:6379> incrby num 10
    (integer) 22
    127.0.0.1:6379> incrby num 10
    (integer) 32
    127.0.0.1:6379> incrby num 10
    (integer) 42

    减:

    127.0.0.1:6379> get num
    "42"
    127.0.0.1:6379> decryby 10
    (integer) 32
    127.0.0.1:6379>  decrby num 10
    (integer) 22
    127.0.0.1:6379>  decrby num 10
    (integer) 12
    127.0.0.1:6379>  decrby num 10
    (integer) 2

     (12)拼接字符串:

    127.0.0.1:6379> get zhai
    "123321"
    127.0.0.1:6379> append zhai nihao
    (integer) 11
    127.0.0.1:6379> get zhai
    "123321nihao"
  • 相关阅读:
    HTML_项目符号使用图片
    字符串查找和替换接口
    AOP代理分析
    3星|董藩《房地产的逻辑》:应该鼓励开发商多盖房而不是惩罚开发商
    2.5星|郎咸平《拯救世界的经济学》:各发达国家与中国的福利政策、经济干预政策的前世今生
    3.5星|科特勒《营销革命4.0》:打造无缝衔接的线上和线下体验
    3星|《韩国式资本主义》:财阀祸害韩国,韩国需要正义的资本主义
    4星|《特朗普时代的全球化战略》:管理学界和管理者可能严重低估了核心管理实践的价值
    2星|《内容创业》:知识付费行业的公开资料整理汇编
    3星|《身边的博弈》:10年旧书,博弈论科普和习题讲解
  • 原文地址:https://www.cnblogs.com/zhai1997/p/11730255.html
Copyright © 2011-2022 走看看