Redis là gì? Không đơn giản là đọc cache, 4 tình huống sau cho thấy bạn hiểu redis tới đâu?

Nội dung bài viết

Video học lập trình mỗi ngày

Redis được biết đến là một database được lưu trữ trong memory được sử dụng để triển khai livestream, message queue, cache, và lưu trữ dữ liệu nếu muốn.

Redis là gì?

Redis là một open source, được nhiều các lập trình viên sử dụng trong nhiều dự án với các cách khác nhau như stream, message queue, cache, json, redisearch... Khó có thể tìm một dự án mà không sử dụng redis vì thế nó là một phần quan trọng trong kinh doanh của mỗi công ty.

Còn nếu những bạn làm devs thân quen với redis thì có lẽ chúng ta sẽ đi vào phần thực tế khi triển khai và những vấn đề gặp phải. Hàng loạt vài viết về series redis mà tôi đã đưa lên những lợi ích và những cách khắc phục khi có sự cố, các bạn có thể dành thời gian tìm hiểu lại nếu như các bạn cam thấy mình chưa thực sự hiểu về redis.

Cách sử dụng cache đúng với redis

Có nhiều cách để triển khai hệ thống cache và cách đọc sử dụng cache với redis thì phổ biến nhất là cách đọc như hình dưới.

cache read redis

Cơ bản là truy trình như sau: Nếu như redis có dữ liệuclient request -> redis -> YES -> return data Client

Nếu như redis không có dữ liệu hay còn gọi là Cache miss thì sẽ như sau: client request -> redis -> NO -> get data database -> return data Client -> set cache.

Nếu như các anh chị cảm thấy khó hiểu, thì nên xem video này Redis là gì? Bài học này đủ để bắt đầu | Là một Backend bạn đã từng gặp những trường hợp này chưa? Một trong những video nói về các trường hợp khá rõ và chi tiết nhất.

Redis sẽ gặp các sự cố nếu như Users sử dụng đồng thời cao

Về cơ bản khi sử dụng redis thì các lập trình viên đều ngại vấn đề write trong redis vì nó liên quan đến tính nhất quán của dữ liệu. Chẳng hạn bạn muốn lấy một vourcher trong eCommerce, khi bạn reload trang web thì vẫn thấy còn 5 vouchers nhưng khi bấm vào lấy thì nó đã hết. Đó là do dữ liệu cache và database không nhất quán với nhau. Việc đó vẫn cho phép trong mô hình kinh doanh, nhưng ví dụ chứng khoán thì sao?? Điều đó sẽ không cho phép, vì vậy bạn nên xem video trên Redis là gì? Bài học này đủ để bắt đầu | Là một Backend bạn đã từng gặp những trường hợp này chưa?.

Một lần nữa tôi muốn nói nếu bạn thật sự muốn hiểu về redis thì hãy xem video trên.

Có thể bạn đã bị missing