01/10/2018, 15:34

Bài 1: Redis – Giới Thiệu Và Cài Đặt

Redis là một mã nguồn mở, lưu trữ dạng key-value và là giải pháp cho việc xây dựng hiệu suất và mở rộng ứng dụng web rất hiệu quả. Redis được viết bằng C. Điều kiện để học: Bạn nên có kiến thức cơ bản về cấu trúc dữ liệu, bạn có thể tham khảo MySQL Tutorial. Hiện tại có thể cài ...

Redis là một mã nguồn mở, lưu trữ dạng key-value và là giải pháp cho việc xây dựng hiệu suất và mở rộng ứng dụng web rất hiệu quả.

Redis được viết bằng C.

Điều kiện để học:

Bạn nên có kiến thức cơ bản về cấu trúc dữ liệu, bạn có thể tham khảo MySQL Tutorial.

Hiện tại có thể cài redis trên window, nhưng trong tutorial này tôi sẽ hướng dẩn bạn thực hành nó ngay trên linux. Do vậy bạn cũng nên có chút  khả năng thao tác với linux command line. Nếu không vẩn không lo lắng, trong bài học tôi sẽ hướng dẩn bạn step by step.

Rồi gooooooooooo!

Redis có 3 đặc thù chính mà đặt nó ngoài sự cạnh tranh với cái khác:

  • Redis giữ toàn bộ cơ sở dữ liệu của nó trong bộ nhớ.
  • Redis có một bộ kiểu dữ liệu dồi dào khi so tới nhiều lưu trữ dữ liệu key-value.
  • Redis có thể backup dữ liệu tới bất kỳ số lượng đĩa phụ.

Lợi Thế Của Redis

  • Nhanh một cách khác thường: Redis rất nhanh có thể thực hiện khoảng 110000 set dữ liệu trên giây, và 81000 get dữ liệu/giây.
  • Hổ trợ giàu các kiểu dữ liệu: redis hổ trợ hầu hết các kiểu dữ liệu mà hầu hét các developer đã biết, giống như: list, set, sorted set, hashes. Cho nên dể dàng giải quyết các vấn đề đa dạng bởi vì chúng ta biết vấn đề nào có thể được xử lý tốt hơn với kiểu dữ liệu đó.
  • Nhiều công cụ tiện ích: Redis là một công cụ đa tiện ích và có thể được sử dụng trong một số trường hợp sử dụng như bộ nhớ đệm, hàng đợi tin nhắn. Bất kỳ dữ liệu có đời sống ngắn trong ứng dụng của bạn như session, đếm số lượng khám phá web page…
  • Các hoạt động là nguyên tử: Tất cả hoạt động của redis là nguyên tử, tức là một đơn vị nhỏ nhất như nguyên tử, do vậy nó bảo đảm rằng nếu có 2 khách hàng đồng thời truy cập server Redis thì sẽ nhận giá trị cập nhật.

Tại sao Redis khác so với các lưu trữ key-value khác?

Nói như vầy có nghĩa là còn rất nhiều hệ thống khác cũng tổ chức lưu trữ dạng key-value.

  • Redis là một con đường phát triển khác biệt trong key-value nơi mà value có thể chứa đựng nhiều kiểu dữ liệu phứt tạp, với các hoạt động nguyên tử được định nghĩa trên các kiểu dữ liệu đó.
  • Redis nằm trên bộ nhớ, nhưng cũng bền vững như trên đĩa, vì thế nó ghi với tốc độ rất cao và tốc độ đọc đạt được với giới hạn của bộ dữ liệu đọc mà không thể lớn hơn bộ nhớ. Một lợi thế khác của cơ sở dữ liệu trong bộ nhớ là với cấu trúc dữ liệu phứt phạp thì nó làm tốt hơn nhiều với cấu trúc dữ liệu lưu trên đĩa, vì thế Redis có thể làm nhiều với độ phứt tạp bên trong ít nhất.

Cài đặt

Cài đặt Redis trên Ubuntu.

Tôi giả định rằng bạn đang sử dụng hệ điều hành Linux Ubuntu, Bạn có thể cài đặt nó bằng phân vùng chính trên ổ đĩa của bạn, hoặc cách tiện lợi nhất cho việc luyện tập là bạn hãy cài Ubuntu vào phần mềm máy ảo,như VMWare chẳng hạn.

Nếu bạn chưa biết cách cài Ubuntu vào máy ảo thì hãy đi đến trang Contact và thoải mái gửi cho tôi một email, tôi sẽ hướng dẩn cho bạn trực tiếp hoặc một file hướng dẩn chi tiết.

Rồi bây giờ mở chạy Ubuntu và tiến hành cài đặt Redis.

Step 1:

Mở terminal và chạy các câu lệnh sau:

$sudo apt-get update

$sudo apt-get install redis-server

install

      Step 2:

    Kiễm tra redis có đang làm việc hay không?

   Gõ redis-cli

install_check_working

    Trong dấu nhắc 127.0.0.1 là địa chỉ ip của máy bạn và 6379 là port mà redis server đang chạy. Tiếp đến bạn gõ PING nếu trả về là PONG thì nghĩa là Redis đã cài đặt thành công trên máy bạn.

Step 3:

Start Redis

Gõ redis-server

Cài Đặt Redis Desktop Manager (RDM)

Cài đặt công cụ RDM sẽ cho bạn giao diện để quản lý redis key và dữ liệu của bạn dể dàng và trực quan hơn

Step 1: Install git

$sudo apt-get install git

install_git

Step 2: get source code

git clone –recursive https://github.com/uglide/RedisDesktopManager.git -b 0.8.0 rdm && cd ./rdm

install_RDM

Cài xong bạn sẽ được đưa tới thư mục clone là rdm như hình bên dưới

Step 3: Build trên Ubuntu

Thực hiện lần lượt các câu lệnh dưới đây:

  • cd src/
  • ./configure
  • source /opt/qt56/bin/qt56-env.sh && qmake && sudo make install
  • cd /usr/share/redis-desktop-manager/bin
  • sudo mv qt.conf qt.backup

install_RDM_1

install_RDM_2

Tiếp tục chạy mục #3 sẽ tạo cho bạn thư mục redis-desktop-manager

install_RDM_3

Thực hiện tiếp mục #4 và #5.

Chúc mừng bạn đã cài thành công Redis Desktop Manager.

Bây giờ bạn gõ /usr/share/redis-desktop-manager/bin/rdm để mở giao diện quản lý của Redis ra.

install_RDM_4

Để kết nối vào Redis DB, bạn chọn connection to Redis Server. Rồi click test connect thử.

Redis_connect

Lưu ý công cụ này chỉ giúp bạn quan sát, thao tác và quản lý key bằng giao diện. Tuy nhiên trong tutorial này tôi sẽ ưu tiên dùng command line (terminal) của linux thực hiện.

Nếu hướng dẩn trên không giúp bạn cài đặt thành công Redis Desktop Manager vì một số lý do thay đổi bởi nhà cung cấp. Thì tôi có backup cho bạn đây, hãy làm theo các bước dưới đây:

Step 1: wget https://github.com/uglide/RedisDesktopManager/releases/download/0.8.3/redis-desktop-manager_0.8.3-120_amd64.deb

Step 2: sudo dpkg -i redis-desktop-manager_0.8.3-120_amd64.deb

Nếu thấy bất kỳ lổi dependencies xuất hiện trong khi chạy step 2. Đừng lo lắng tiếp step 3

Step 3: sudo apt-get -f install

Chúng mừng đã cài xong

Step 4: chạy Redis Desktop Manager với lệnh sau:

 sudo redis-desktop-manager

0