Monday, March 8, 2021
Lưu Xuân Trường's Blog
  • Trang chủ
  • Backend
    • Laravel
    • Golang
    • NodeJS
    • MongoDB
    • Redis
    • WordPress
      • Kinh nghiệm
      • Plugins
  • Frontend
    • CSS
    • Javascript
      • ReactJS
      • UmiJS
      • VueJS
      • NuxtJS
      • Angular
      • RxJS
    • Game HTML5
  • Mobile
    • React Native
    • IOS
    • Android
    • Flutter
  • Tutorials
    • Redux-Saga
  • How to
  • Góc Ngoài Lề
    • Sống Chậm Nghĩ Sâu
    • Câu Hỏi Phỏng Vấn
    • IQ Test
  • Liên Hệ
No Result
View All Result
  • Trang chủ
  • Backend
    • Laravel
    • Golang
    • NodeJS
    • MongoDB
    • Redis
    • WordPress
      • Kinh nghiệm
      • Plugins
  • Frontend
    • CSS
    • Javascript
      • ReactJS
      • UmiJS
      • VueJS
      • NuxtJS
      • Angular
      • RxJS
    • Game HTML5
  • Mobile
    • React Native
    • IOS
    • Android
    • Flutter
  • Tutorials
    • Redux-Saga
  • How to
  • Góc Ngoài Lề
    • Sống Chậm Nghĩ Sâu
    • Câu Hỏi Phỏng Vấn
    • IQ Test
  • Liên Hệ
No Result
View All Result
Lưu Xuân Trường's Blog
No Result
View All Result

Redis là gì? cài đặt sử dụng như thế nào

truongluu by truongluu
15/10/2020
in Redis
Reading Time: 3min read
0 0
0
Redis là gì? cài đặt sử dụng như thế nào
0
SHARES
104
VIEWS
Share on FacebookShare on Twitter

1. Redis là gì:

Redis hay còn gọi là bộ lưu trữ khóa – giá trị và được lưu trữ trên RAM. Thường được xem như hệ cơ sở dữ liệu noSQL.

2. Cài đặt:

Có nhiều cách để cài đặt Redis như cài trực tiếp trực tiếp trên server, máy local hoặc sử dụng docker. Ở đây đơn giản nhất mình sử dụng docker để tạo ra 1 server redis. Gồm 2 bước đơn giản sau:

  1. Pull Redis từ docker hub về: docker pull redis
  2. Chạy redis, mapping cho nó 1 port  bên ngoài vào: docker run -d -p 6379:6379 –name redis redis

3. Sử dụng:

  • Chúng ta có thể sử dụng lệnh SET để lưu giá trị “fido” với từ khóa “server:name”
    1
    SET server:name "fido"
  • Redis lưu trữ dữ liệu “fido” và khi chúng ta cần truy xuất dữ liệu của khóa “server:name”, Redis sẽ trả về kết quả “fido”
    1
    GET server:name => "fido"
  • Một số các phép toán phổ biến khác được cung cấp như DEL để xóa khóa với giá trị đã cung cấp trước đó, SET là từ khóa dùng để thiết lập cho một khóa nếu khóa đó chưa tồn tại, và phép toán INCR tăng 1 số xác định được cung cấp bởi từ khóa trước đó
    1
    2
    3
    4
    5
    SET connections 10
    INCR connections => 11
    INCR connections => 12
    DEL connections
    INCR connections => 1
  • Redis có thể cho biết rằng 1 khóa có thể tồn tại trong 1 thời gian nhất định, điều này được sử dụng với các lệnh EXPIRE và TLL
  • 1
    2
    SET hello "world"
    EXPIRE hello 120

    Điều này có nghĩa là khóa hello chỉ tồn tại trong 120 s, sau đó nó sẽ bị xóa đi. Sau 120s thì GET hello sẽ trả về giá trị nil
    Để xem thời gian sống của khóa còn lại bao nhiêu bạn sài TTL
    1
    2
    3
    TTL hello => 113
    // after 120s
    TTL hello => -2

    TTL trả về -2 có nghĩa là khóa không tồn tại, còn trả về -1 là khóa không bao giờ hết hạn.
  • Redis cũng hổ trợ 1 số cấu trúc dữ liệu phức tạp hơn. Đó là danh sách, bao gồm RPUSH, LPUSH, LPOP, RPOP, LLEN, và LRANGE
    RPUSH
    là thêm 1 giá trị vào cuối danh sách
    1
    2
    RPUSH friends "Alice"
    RPUSH friends "Bob"

    LPUSH là thêm 1 giá trị và đầu danh sách
    1
    LPUSH friends "Sam"

    LLEN là kiểm tra chiều dài của danh sách
    LRANGE là trả về 1 tập hợp con từ danh sách, gồm có 2 tham số, tham số 1 là chỉ số của phần tử đầu, tham số thứ 2 là chỉ số của phần tử cuối. Nếu tham số 2 là -1 có nghĩa  là lấy cho tới cuối danh sách
    1
    2
    3
    LRANGE friends 0 -1 => 1) "Sam", 2) "Alice", 3) "Bob"
    LRANGE friends 0 1 => 1) "Sam", 2) "Alice"
    LRANGE friends 1 2 => 1) "Alice", 2) "Bob"

     

    Còn tiếp…

Tags: redis
Previous Post

Bắt lỗi trong Redux-Saga

Next Post

Điểm khác biệt giữa mixins, extends và placeholders trong SASS

truongluu

truongluu

Next Post
Điểm khác biệt giữa mixins, extends và placeholders trong SASS

Điểm khác biệt giữa mixins, extends và placeholders trong SASS

Leave a Reply Cancel reply

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

Quotations

About me

Field of interests: Svelte, ReactJS, Angular, VueJS, React Native, Flutter, NodeJS, MongoDB, Message Broker, WordPress, AdonisJS, NestJS, NuxtJS, Docker, Microservice, Arduino, Game HTML5. Hope to share my experiences with everybody

Recent Posts

  • Code push in React Native
  • What’s middleware? How does it work?
  • Styled components trong ReactJS
  • Frontity cơ bản phần I (Tạo và chạy dự án)
  • React framework for WordPress

Recent Comments

  • truongluu on Giới thiệu về UmiJS P2 (Cấu trúc thư mục, cấu hình thường dùng)
  • Hung on Giới thiệu về UmiJS P2 (Cấu trúc thư mục, cấu hình thường dùng)
  • Redux Saga phần III (Tips khi làm việc) - Lưu Xuân Trường's Blog on Quản lý trạng thái tải khi dùng redux-saga
  • Redux Saga phần II (Các khái niệm cơ bản) - Lưu Xuân Trường's Blog on Cheatsheets Non Blocking, Blocking Redux Saga
  • truongluu on Giới thiệu về UmiJS P4 (Server Side Rendering)

Archives

  • February 2021
  • January 2021
  • November 2020
  • October 2020
  • September 2020
  • August 2020
  • July 2020
  • June 2020
  • May 2020
  • March 2020
  • February 2020
  • January 2020
  • June 2019
  • May 2019
  • April 2019
  • March 2019
  • February 2019
  • January 2019
  • November 2018
  • October 2018
  • September 2018
  • August 2018
  • July 2018
  • April 2018
  • March 2018

Categories

  • AdonisJS
  • Angular
  • Arduino
  • Backend
  • Câu Hỏi Phỏng Vấn
  • CSS
  • Ebook
  • Frontend
  • Frontity
  • Góc Ngoài Lề
  • How to
  • IOS
  • IQ Test
  • Javascript
  • Kinh nghiệm
  • Kinh nghiệm làm việc
  • Máy chủ
  • Mobile
  • MongoDB
  • NestJS
  • NodeJS
  • NuxtJS
  • Plugins
  • React Native
  • React Native
  • ReactJS
  • Redis
  • Redux-Saga
  • RxJS
  • Tutorials
  • UmiJS
  • Uncategorized
  • VueJS
  • WordPress

Friends

Phu's blog
  • RxJS toàn tập (P1 giới thiệu RxJS là gì)

    RxJS toàn tập (P1 giới thiệu RxJS là gì)

    0 shares
    Share 0 Tweet 0
  • Giới thiệu về UmiJS P1 (Tổng quan về umiJS)

    0 shares
    Share 0 Tweet 0
  • Redux Saga phần I (Giới thiệu)

    0 shares
    Share 0 Tweet 0
  • Giới thiệu về UmiJS P2 (Cấu trúc thư mục, cấu hình thường dùng)

    0 shares
    Share 0 Tweet 0
  • Một số câu hỏi phỏng vấn frontend developer

    0 shares
    Share 0 Tweet 0

About me

Lưu Xuân Trường

Field of interests: Svelte, ReactJS, Angular, VueJS, React Native, Flutter, NodeJS, MongoDB, Message Broker, WordPress, AdonisJS, NestJS, NuxtJS, Docker, Microservice, Arduino, Game HTML5. Hope to share my experiences with everybody

© 2020 https://luuxuantruong.info

No Result
View All Result
  • Trang chủ
  • Backend
    • Laravel
    • Golang
    • NodeJS
    • MongoDB
    • Redis
    • WordPress
      • Kinh nghiệm
      • Plugins
  • Frontend
    • CSS
    • Javascript
      • ReactJS
      • UmiJS
      • VueJS
      • NuxtJS
      • Angular
      • RxJS
    • Game HTML5
  • Mobile
    • React Native
    • IOS
    • Android
    • Flutter
  • Tutorials
    • Redux-Saga
  • How to
  • Góc Ngoài Lề
    • Sống Chậm Nghĩ Sâu
    • Câu Hỏi Phỏng Vấn
    • IQ Test
  • Liên Hệ

© 2020 https://luuxuantruong.info

Welcome Back!

Login to your account below

Forgotten Password?

Create New Account!

Fill the forms below to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In