• About
  • Advertise
  • Privacy & Policy
  • Contact
DevZone
  • Home
  • News
  • Dev
    • All
    • Algorithm
    • Architecture
    • Database
    • Design
    • DevOps
    • IoT
    • Network
    • Test
    • Web
    Phương thức xử lý mảng trong javascript

    Phương thức xử lý mảng trong javascript

    Bảo vệ content, chống copy nội dung web!

    Bảo vệ content, chống copy nội dung web!

    Lưu ý mệnh đề NOT IN trong SQL

    Lưu ý mệnh đề NOT IN trong SQL

    SOLID Principles: Dependency Inversion Principle

    SOLID Principles: Dependency Inversion Principle

    Solid Principles: Interface Segregation Principle

    Solid Principles: Interface Segregation Principle

    Tìm hiểu về composer.json schema (phần 2 – autoload)

    Tìm hiểu về composer.json schema (phần 2 – autoload)

    IPC – Đằng sau sự thành công của Chromium

    IPC – Đằng sau sự thành công của Chromium

    Dựng layout website với CSS Grid Layout

    Dựng layout website với CSS Grid Layout

    Golang cơ bản (p1)

    Golang cơ bản (p1)

    Trending Tags

    • Idea
    • Lifestyle
    No Result
    View All Result
    • Home
    • News
    • Dev
      • All
      • Algorithm
      • Architecture
      • Database
      • Design
      • DevOps
      • IoT
      • Network
      • Test
      • Web
      Phương thức xử lý mảng trong javascript

      Phương thức xử lý mảng trong javascript

      Bảo vệ content, chống copy nội dung web!

      Bảo vệ content, chống copy nội dung web!

      Lưu ý mệnh đề NOT IN trong SQL

      Lưu ý mệnh đề NOT IN trong SQL

      SOLID Principles: Dependency Inversion Principle

      SOLID Principles: Dependency Inversion Principle

      Solid Principles: Interface Segregation Principle

      Solid Principles: Interface Segregation Principle

      Tìm hiểu về composer.json schema (phần 2 – autoload)

      Tìm hiểu về composer.json schema (phần 2 – autoload)

      IPC – Đằng sau sự thành công của Chromium

      IPC – Đằng sau sự thành công của Chromium

      Dựng layout website với CSS Grid Layout

      Dựng layout website với CSS Grid Layout

      Golang cơ bản (p1)

      Golang cơ bản (p1)

      Trending Tags

      • Idea
      • Lifestyle
      No Result
      View All Result
      DEVZONE
      No Result
      View All Result
      Home Dev Database

      Xin chào Redis!

      phamanhtuan by phamanhtuan
      February 3, 2020
      in Database, Uncategorized
      0
      Xin chào Redis!

      REDIS LÀ GÌ

      Redis là phần mềm mã nguồn mở, lưu trữ dữ liệu trên RAM và ổ đĩa .

      Redis là một cơ sở dữ liệu dạng NoSQL cho hiệu suất rất tốt với việc hỗ trợ các cấu trúc dữ liệu  strings, hashes, lists, sets, sorted sets.

      Do tốc độ và hiệu năng tuyệt vời, Redis hay được dùng cho việc cache.

      Redis có thể dễ dàng mở rộng với mô hình master-slave, hỗ trợ tất cả các ngôn ngữ lập trình phổ biến và chạy tốt trên các hệ thống Linux, *BSD, OSX.

      Redis được tác giả Salvatore Sanfilippo cho ra mắt bản chính thức vào ngày 10/05/2009 .

      TẠI SAO LẠI LÀ REDIS?

      Trước đây, để cache dữ liệu chúng ta hay dùng memcache. Nhưng memcache được thiết kế đơn giản với việc chỉ hỗ trợ dữ liệu dang key-value. Đôi khi, chúng ta cần cache dữ liệu dạng phức tạp hơn (có cấu trúc) , và thế là redis ra đời.

      So sánh memcache và redis

      Cơ bản về REDIS

      Trong bài viết mình sẽ giới thiệu 5 kiểu của redis.

      Đầu tiên, các bạn có thể tải redis tại đây và cài đặt theo hướng dẫn.

      Sau khi cài đặt thành công, mở command line, gõ redis-cli. Đây chính là cửa sổ chúng ta tương tác với redis, mỗi khi gõ lệnh bạn có thể gõ tab để nhận được sự gợi ý từ của sổ command.

      Lưu ý: dưới đây chỉ là những lệnh cơ bản của 1 kiểu dữ liệu, các bạn có thể tìm hiểu thêm các lệnh khác tại đây.

      1 Strings

      Trong redis, string tương tự các ngôn ngữ khác, được lưu dưới dạng key-value.

      Các lệnh cơ bản:

      SET: lưu dữ liệu vào key.

      GET: lấy dữ liệu được lưu trong key, trả về nil nếu key không tồn tại.

      Ví dụ với STRINGs

      2 Lists (linked-list cấu trúc)

      LISHs hỗ trợ chúng ta lưu 1 danh sách các string dưới dạng linked-list

      Các lệnh cơ bản

      RPUSH: lưu dữ liệu vào đầu tiên của list

      LRANGE: lấy dữ liệu trong 1 khoảng theo vị trí index

      LINDEX: lấy dữ liệu theo vị trí index của giá trị trong list

      LPOP: lấy dữ liệu đầu tiên trong list, xóa đi và trả về

      LLEN: độ dài của list

      Ví dụ với LISTs

      3 Sets

      SETs tương tự như LISHs, nhưng dữ liệu được lưu dưới dạng hashtable, nhằm đảm bảo mỗi giá trị là duy nhất.

      Các lệnh cơ bản:

      SADD: lưu dữ liệu vào set.

      SMEMBERS: lấy danh sách của set.

      SISMEMBER: kiểm tra 1 giá trị có trong set hay không.

      SREM: xóa 1 giá trị trong set, nếu nó tồn tại.

      Ví dụ với SETs

      4 Hashes

      Nếu LISHs và SETs lưu một danh sách string thì HASHes là một danh sách các field và value.

      Các lệnh cơ bản:

      HSET: lưu giá trị và field vào hash.

      HGET: lấy giá tri từ field trong hash.

      HGETALL: lấy tất cả các giá trị và field trong hash

      HDEL: xóa field trong hash, nếu nó tồn tại

      Ví dụ với HASHes

      5 ZSETs (Sorter Set) 

      Giống với HASHes, chứa dữ liệu dưới dạng key-value, trong ZSETs:

      • các key được gọi là member, các member không được phép trùng nhau.
      • value được gọi là score, các score là dạng số.

      Các lệnh cơ bản:

      ZADD: lưu member, score vào zset

      ZRANGE:  lấy dữ liệu trong 1 khoảng theo vị trí index

      ZRANGEBYSCORE: lấy dữ liệu trong 1 khoảng theo score

      ZREM: xóa 1 giá trị trong zset theo member, nếu nó tồn tại.

      Ví dụ với ZSETs

      6 Một số lệnh khác

      DEL: xóa một key.

      EXPIRE: giới hạn thời gian tồn tại cho 1 key (theo đơn vị giây)

      TTL: thời gian tồn tại của key (theo đơn vị giây)

      Mình đã trình bày một số lệnh cơ bản trong redis.  Nếu có thể, trong phần tới mình sẽ bổ sung thêm một số lệnh và một vài “best practice” trong redis.

      Cảm ơn các bạn đã đọc bài.

      Thả tim (3 lượt thả tim)
      Loading...
      Previous Post

      Facade Pattern

      Next Post

      Bạn đã rửa tay đúng cách chưa?

      phamanhtuan

      phamanhtuan

      Next Post
      Rửa tay đúng cách

      Bạn đã rửa tay đúng cách chưa?

      Leave a Reply Cancel reply

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

      Recent News

      Lập trình viên không dùng máy Mac nhiều như người ta đã nghĩ

      Lập trình viên không dùng máy Mac nhiều như người ta đã nghĩ

      July 25, 2020
      Dấu hiệu nhận biết sức khỏe qua liềm móng tay

      Dấu hiệu nhận biết sức khỏe qua liềm móng tay

      June 26, 2020
      Phương thức xử lý mảng trong javascript

      Phương thức xử lý mảng trong javascript

      May 31, 2020
      Lợi ích của việc tập thể dục thường xuyên

      Lợi ích của việc tập thể dục thường xuyên

      May 25, 2020
      DEVZONE

      Browse by Category

      • Algorithm
      • Architecture
      • Database
      • Design
      • Dev
      • DevOps
      • Idea
      • IoT
      • Lifestyle
      • Network
      • News
      • Test
      • Uncategorized
      • Web
      • About
      • Advertise
      • Privacy & Policy
      • Contact

      © 2019 Devzone

      No Result
      View All Result

      © 2019 Devzone