Skip to content

NimTechnology

Trình bày các công nghệ CLOUD một cách dễ hiểu.

  • Kubernetes & Container
    • Docker
    • Kubernetes
      • Ingress
      • Pod
    • Helm Chart
    • OAuth2 Proxy
    • Isito-EnvoyFilter
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Vault
    • Longhorn – Storage
    • VictoriaMetrics
    • MetalLB
    • Kong Gateway
  • CI/CD
    • ArgoCD
    • ArgoWorkflows
    • Argo Events
    • Spinnaker
    • Jenkins
    • Harbor
    • TeamCity
    • Git
      • Bitbucket
  • Coding
    • DevSecOps
    • Terraform
      • GCP – Google Cloud
      • AWS – Amazon Web Service
      • Azure Cloud
    • Golang
    • Laravel
    • Python
    • Jquery & JavaScript
    • Selenium
  • Log, Monitor & Tracing
    • DataDog
    • Prometheus
    • Grafana
    • ELK
      • Kibana
      • Logstash
  • BareMetal
    • NextCloud
  • Toggle search form

[Redis] Redis commands are very helpful

Posted on August 23, 2024August 23, 2024 By nim No Comments on [Redis] Redis commands are very helpful

Hướng dẫn

Run Docker redis:

docker run -p 6379:6379 -d redis

Tiếp đến bạn đi vào trong redis:

docker exec -it f0b85ad30e58 bash

bạn sẽ thấy bên trong redis có săn các tool command:

root@f0b85ad30e58:/data# re
read             readlink         readprofile      redis-benchmark  redis-check-rdb  redis-sentinel   remove-shell     reset            resizepart       rev              
readarray        readonly         realpath         redis-check-aof  redis-cli        redis-server     renice           resize2fs        return

Contents

Toggle
  • Redis string
  • redis list
  • Redis sets

Redis string

chúng ta dùng lệnh set đến gán 1 key vào

set <key_name> <value>

Get value của 1 key

get <key_name>

Ngoài ra chúng ta cò getrange

getrange mykey 0 -1

Nó lấy về 1 phần được chỉ định 1 cách rõ ràng thuộc chuỗi được lưu trữ trong 1 key.
getrange <key_name> <first character> <last character>
last character sẽ là dấu âm.

127.0.0.1:6379> getrange mykey 0 3
"this"

Ngoài ra chúng ta có thể dùng mset và mget để gán và lấy nhiều keys values

Đếm độ dài của value thuộc 1 key dùng strlen <key_name>

với các value là kiểu số chúng ta cũng thể tăng giảm value

để tăng 1 giả trị thì dùng: incr count
để giảm 1 giá trị thì dùng: decr count

Nếu bạn muốn cộng thêm 1 lượng cụ thể incrby count <number>
Giảm 1 lượng cụ thể: decrby count <number>

127.0.0.1:6379> set count 1
OK
127.0.0.1:6379> get count
"1"
127.0.0.1:6379> incr count
(integer) 2
127.0.0.1:6379> incr count
(integer) 3
127.0.0.1:6379> incr count
(integer) 4
127.0.0.1:6379> get count
"4"
127.0.0.1:6379> incrby count 10
(integer) 14
127.0.0.1:6379> decr count
(integer) 13
127.0.0.1:6379> decr count
(integer) 12
127.0.0.1:6379> decrby count 10
(integer) 2

Một điều quan trọng chúng ta có set được expire cho key cụ thể:

expire <key_name> <second_expire>

kiểu tra expire time của 1 key: ttl <key_name>

127.0.0.1:6379> set a 1
OK
127.0.0.1:6379> expire a 10
(integer) 1
127.0.0.1:6379> ttl a
(integer) 8
127.0.0.1:6379> ttl a
(integer) 7
127.0.0.1:6379> ttl a
(integer) 6
127.0.0.1:6379> ttl a
(integer) 5
127.0.0.1:6379> ttl a
(integer) 4
127.0.0.1:6379> ttl a
(integer) 3
127.0.0.1:6379> ttl a
(integer) 3
127.0.0.1:6379> ttl a
(integer) 2
127.0.0.1:6379> ttl a
(integer) 1
127.0.0.1:6379> ttl a
(integer) 0
127.0.0.1:6379> ttl a
(integer) -2
127.0.0.1:6379> ttl a
(integer) -2
127.0.0.1:6379> ttl a
(integer) -2
127.0.0.1:6379> get a
(nil)

Show toàn bộ key:

127.0.0.1:6379> keys *
1) "mykey"
2) "count"

redis list

lpush là 1 command trong redis được sử dụng để insert 1 hoặc nhiều values vào 1 key
lpush thì nó sẽ add lên đầu

LPUSH key value [value ...]

còn nếu bạn muốn add vào cuối thì dùng rpush

Để lấy length của 1 list trong redis: llen <key_name>

Để xóa phần tử trong list
– để xóa phần tử đầu tiên thì lpop <key_name>
– để xóa phần tử cũ nhất rpop <key_name>

Để chỉnh sửa 1 value cụ thể trong list

lset <key_name> <position> <new_value>

Nếu bạn muốn insert value vào giữa list

lấy value theo index

Chúng ta muốn push value nếu key đó tồn tại

Sắp xếp dữ liệu hiện thị theo kiểu alpha

Hoặc kiểu desc

Redis sets

SADD comamdn trong redis được sử dụng để add 1 hoặc nhiều menbers vào một set stored.

127.0.0.1:6379> sadd backend redis
(integer) 1
127.0.0.1:6379> sadd backend java
(integer) 1
127.0.0.1:6379> sadd backend nodejs aws
(integer) 2
127.0.0.1:6379> smembers backend
1) "aws"
2) "nodejs"
3) "java"
4) "redis"

Chúng ta có thể đếm số lượng phần từ trong Redis Set.

127.0.0.1:6379> scard backend
(integer) 4

Điểm khác giữa lpush và sadd là lpush chúng ta có thể add những giá trị trùng nhau còn sadd thì không.

Kiểm tra value có tồn tại trong key không?

trong backend có chứa value là java

Tiếp theo chúng ta kiển tra các member của backend mà không có trong frontend.

Nếu chúng ta muốn tạo 1 key mà để lưu trữ các key mà khác nhau giữa backend và frontend.

Key newSet chưa các phần tử trong backend mà không thấy trong frontend.

và tìm các phần tử chung của 2 thằng backend và frontend.

chúng ta muốn thực hiện phép hợp (union) của các tập hợp (sets) và trả về các phần tử khách nhau từ các tập hợp đã được chỉ định.

Chúng ta sẽ có để store các phần tử trả về của union.

Uncategorized

Post navigation

Previous Post: [Prometheus – Grafana – Monitoring] Look into rate and irate, min, max, average and latest over a specific time.
Next Post: [NextJS 14 – ReactJS – Type Script] Bài 1: Những kiến thức Javascript cần biết cho khóa học.

More Related Articles

[PromQL] Use Count and Count by (xx) to count the number of pods that hold many containers inside these pods. Uncategorized
[Jenkins]Scripted Pipeline lesson 15: Parameters. Jenkins
[Jenkins] Lesson 12: skipStagesAfterUnstable with Jenkins Pipeline Jenkins
[Jenkins] Lesson 19: Trigger other jobs through Jenkins Pipeline Jenkins
[Golang] List large files in the folder quickly on Golang Golang
[Vector by DataDog] Use Vector to parse and convert logs to anything. Log, Monitor & Tracing

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Tham Gia Group DevOps nhé!
Để Nim có nhiều động lực ra nhiều bài viết.
Để nhận được những thông báo mới nhất.

Recent Posts

  • [Laravel] Laravel Helpful June 26, 2025
  • [VScode] Hướng dẫn điều chỉnh font cho terminal June 20, 2025
  • [WordPress] Hướng dấn gửi mail trên WordPress thông qua gmail. June 15, 2025
  • [Bitbucket] Git Clone/Pull/Push with Bitbucket through API Token. June 12, 2025
  • [Teamcity] How to transfer the value from pipeline A to pipeline B June 9, 2025

Archives

  • June 2025
  • May 2025
  • April 2025
  • March 2025
  • February 2025
  • January 2025
  • December 2024
  • November 2024
  • October 2024
  • September 2024
  • August 2024
  • July 2024
  • June 2024
  • May 2024
  • April 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023
  • December 2022
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021

Categories

  • BareMetal
    • NextCloud
  • CI/CD
    • Argo Events
    • ArgoCD
    • ArgoWorkflows
    • Git
      • Bitbucket
    • Harbor
    • Jenkins
    • Spinnaker
    • TeamCity
  • Coding
    • DevSecOps
    • Golang
    • Jquery & JavaScript
    • Laravel
    • NextJS 14 & ReactJS & Type Script
    • Python
    • Selenium
    • Terraform
      • AWS – Amazon Web Service
      • Azure Cloud
      • GCP – Google Cloud
  • Kubernetes & Container
    • Apache Kafka
      • Kafka
      • Kafka Connect
      • Lenses
    • Docker
    • Helm Chart
    • Isito-EnvoyFilter
    • Kong Gateway
    • Kubernetes
      • Ingress
      • Pod
    • Longhorn – Storage
    • MetalLB
    • OAuth2 Proxy
    • Vault
    • VictoriaMetrics
  • Log, Monitor & Tracing
    • DataDog
    • ELK
      • Kibana
      • Logstash
    • Fluent
    • Grafana
    • Prometheus
  • Uncategorized
  • Admin

Copyright © 2025 NimTechnology.