>  기사  >  데이터 베이스  >  Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

WBOY
WBOY앞으로
2023-06-02 19:20:35862검색

    Redis 관련 지식

    Redis의 기본 포트 번호는 6379입니다.

    기본적으로 16개의 데이터베이스가 있으며 0부터 시작하는 배열 첨자와 유사하게 초기 기본값은 라이브러리 번호 0을 사용합니다.
    데이터베이스를 전환하려면 select <dbid></dbid> 명령을 사용하세요. 예: 8을 선택합니다. select <dbid></dbid>来切换数据库。 如: select 8。
    统一密码管理,所有库同样密码。

    dbsize查看当前数据库的key的数量。
    flushdb清空当前库。
    flushall通杀全部库。

    Redis是单线程+多路IO复用技术。
    多路复用是指使用一个线程来检查多个文件描述符( Socket )的就绪状态,比如调用select和poll函数,传入多个文件描述符,如果有一个文件描述符就绪,则返回,否则阻塞直到超时。得到就绪状态后进行真正的操作可以在同一个线程里执行,也可以启动线程执行(比如使用线程池)。

    串行 VS 多线程+锁 ( memcached) VS 单线程+ 多路IO复用(Redis)
    Redis与Memcache三点不同:

    • 支持多数据类型

    • 支持持久化

    • 单线程+多路IO复用

    Redis中的数据类型

    Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

    redis 键(key)

    keys *:查看当前库所有key (匹配 : keys *1)

    Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

    exists key:判断某个key是否存在。
    type key:查看你的key是什么类型。
    del key:删除指定的key数据,

    unlink key:根据value选择非阻塞删除。仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作。。
    expire key 10:10 秒钟,为给定的key设置过期时间,
    ttl key:查看还有多少秒过期, -1表示永不过期, -2表示已过期。

    select命令切换数据库,
    dbsize查看当前数据库的key的数量。
    flushdb清空当前库。
    flushall通杀全部库

    Redis字符串(String)

    String是Redis 最基本的类型,一个key对应一个value。
    String类型是二进制安全的。 意味着Redis的string可以包含任何数据。比如jpg图片
    或者序列化的对象。
    String类型是Redis最基本的数据类型, 一个Redis中字符串value最多可以是512M。

    常用命令

    set、get等

    set <key> <value></value></key>:添加键值对。
    当设置过值的key再被设置一个新的值时,新的值会覆盖旧的。

    Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

    *NX:当数据库中key不存在时,可以将key-value添加数据库。
    *XX:当数据库中key存在时,可以将key-value添加数据库,与NX参数互斥。
    *EX: key的超时秒数。
    *PX: key 的超时毫秒数,与EX互斥。

    get <key></key> 查询对应键值.
    append <key> <value></value></key>将给定的追加到原值的末尾,
    strlen <key></key> 获得值的长度。
    setnx <key> <value></value></key>只有在key不存在时设置 key的值.

    增减建的值

    incr

    将key中储存的数字值增1。
    只能对数字值操作,如果为空,新增值为10

    decr

    将key中储存的数字值减1。
    只能对数字值操作。如果为空,新增值为-1。

    inrjy/ decrby <key></key>통합 비밀번호 관리, 모든 도서관의 비밀번호가 동일합니다.

    dbsize 현재 데이터베이스의 키 수를 확인하세요.
    flushdb현재 라이브러리를 지웁니다.
    flushall은 모든 라이브러리를 종료합니다.

    Redis는 단일 스레드 + 다중 채널 IO 다중화 기술입니다.

    멀티플렉싱은 하나의 스레드를 사용하여 선택 및 폴링 함수 호출, 여러 파일 설명자 전달, 하나의 파일 설명자가 준비되면 반환, 그렇지 않으면 시간 초과될 때까지 차단 등 여러 파일 설명자(소켓)의 준비 상태를 확인하는 것을 의미합니다. 준비 상태를 얻은 후 동일한 스레드에서 실제 작업을 수행하거나 스레드 실행을 시작할 수 있습니다(예: 스레드 풀 사용).

    직렬 VS 다중 스레드 + 잠금(memcached) VS 단일 스레드 + 다중 채널 IO 멀티플렉싱(Redis)

    Redis 및 Memcache 3 차이점:
    • 다양한 데이터 유형 지원

    • 지속성 지원Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

    • 단일 스레드 + 다중 채널 IO 재사용
    • Redis의 데이터 유형

      Redis란 무엇입니까? 중간 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      redis 키(key)

      keys *: 현재 라이브러리의 모든 키를 봅니다(일치: 키 *1)Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까🎜🎜 키가 존재합니다: 키가 존재하는지 확인합니다. 🎜유형 키: 키 유형이 무엇인지 확인하세요. 🎜del 키: 지정된 키 데이터를 삭제하고, 🎜🎜연결 해제 키: 값에 따라 비차단 삭제를 선택합니다. 키스페이스 메타데이터에서는 키만 삭제되며 실제 삭제는 나중에 비동기식으로 수행됩니다. . 🎜expire key 10: 10초, 특정 키의 만료 시간 설정, 🎜ttl key: 만료까지 남은 시간(초) 확인, -1은 만료되지 않음을 의미, -2는 만료되었음을 의미합니다. 🎜🎜select 명령은 데이터베이스를 전환하고, 🎜dbsize는 현재 데이터베이스의 키 수를 확인합니다. 🎜flushdb현재 라이브러리를 지웁니다. 🎜flushall 모든 라이브러리 종료 🎜

      Redis 문자열(문자열)

      🎜String은 Redis의 가장 기본적인 유형으로, 하나의 키는 하나의 값에 해당합니다. 🎜문자열 유형은 바이너리 안전합니다. 이는 Redis 문자열에 모든 데이터가 포함될 수 있음을 의미합니다. 예를 들어 jpg 사진 🎜 또는 직렬화된 개체입니다. 🎜문자열 유형은 Redis의 가장 기본적인 데이터 유형입니다. Redis의 최대 문자열 값은 512M입니다. 🎜🎜일반적인 명령🎜🎜set, get 등🎜🎜set <key> <value></value></key>: 키-값 쌍을 추가합니다. 🎜설정된 값이 있는 키가 새 값으로 설정되면 새 값이 이전 값을 덮어씁니다. 🎜🎜Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까🎜🎜 🎜 *NX: 데이터베이스에 키가 없는 경우 키-값을 데이터베이스에 추가할 수 있습니다. 🎜*XX: 데이터베이스에 키가 존재하는 경우 NX 매개변수와 상호 배타적인 키-값을 데이터베이스에 추가할 수 있습니다. 🎜*EX: 키 시간 초과 초. 🎜*PX: 키의 시간 초과(밀리초), EX와 상호 배타적입니다. 🎜🎜🎜get <key></key> 해당 키 값을 쿼리합니다. 🎜append <value></value>주어진 끝에서 🎜strlen <key></key>는 값의 길이를 가져옵니다. 🎜setnx <key> <value></value></key>키가 존재하지 않는 경우에만 키 값을 설정하세요. 🎜🎜빌드된 값을 늘리거나 줄입니다.🎜🎜🎜incr 🎜🎜🎜 의 숫자 값이 1씩 증가합니다.에 키를 저장합니다. 🎜숫자 값에만 작동할 수 있습니다. 비어 있으면 새 값은 10입니다.🎜🎜🎜decr 🎜🎜🎜키에 저장된 숫자 값을 1씩 줄입니다. 🎜숫자 값에만 작동할 수 있습니다. 비어 있으면 새 값은 -1입니다. 🎜🎜inrjy/ decrby <key></key> 키에 저장된 숫자 값을 늘리거나 줄입니다. 사용자 정의 단계 크기. 🎜🎜참고: 🎜incr 및 decr은 원자 연산이지만🎜 Java의 i++는 원자 연산이 아닙니다.🎜🎜mset, mget 및 msetnx🎜🎜🎜mset .🎜🎜🎜하나 이상의 키-값 쌍을 동시에 설정하세요. 🎜🎜🎜🎜🎜🎜mget 🎜🎜🎜동시에 하나 이상의 값을 가져옵니다. 🎜🎜🎜🎜

      msetnx

      주어진 키가 모두 존재하지 않는 경우에만 하나 이상의 키-값 쌍을 동시에 설정합니다. 언제 성공해요?

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      이전에 하나라도 있으면 성공하지 못합니다

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      getrange, setrange

      getrange

      값 범위 가져오기 , Java의 하위 문자열과 유사, 전면 패키지, 후면 패키지

      setrange

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      만료 시간 설정

      setex

      키 값을 설정하는 동안 만료 시간을 초 단위로 설정하세요.

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      이전 값 바꾸기

      getset

      이전 값을 새 값으로 바꾸고 새 값을 설정하는 동시에 이전 값을 가져옵니다.

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      문자열 데이터 구조

      SDS는 String 데이터 구조의 약어로, 간단한 동적 문자열의 데이터 구조를 나타냅니다. 수정 가능한 문자열입니다. 내부 구조는 Java의 ArrayList와 유사하며, 잦은 메모리 할당을 줄이기 위해 미리 할당된 중복 공간을 사용합니다.

      Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?

      그림과 같이 내부 공간 용량은 일반적으로 실제 끈 길이 len보다 큽니다. 문자열 길이가 1M 미만인 경우 확장 시 기존 공간이 2배로 늘어납니다. 단, 길이가 1M를 초과하면 확장할 때마다 1M의 공간만 추가됩니다. 문자열의 최대 길이는 512M입니다.

    위 내용은 Redis의 키와 문자열에 대한 일반적인 명령은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제