Nội dung bài viết
Video học lập trình mỗi ngày
Tôi cảm thấy rằng việc sử dụng redis trong dự án chủ yếu được xem xét từ hai khía cạnh đó là hiệu suất và đồng thời. Tất nhiên, redis cũng có các chức năng khác như khóa phân tán nhưng có thể sử dụng nhiều stack khác để thay thế và không cần thiết phải sử dụng redis. Do đó, câu hỏi này chủ yếu được trả lời từ hai khía cạnh hiệu suất và đồng thời.
Redis được giới thiệu trong Series Nodejs Backend e-Commerce 34, các bạn có thể tham khảo với hơn 30 video cấp độ 0-4.
Hiệu suất trong Redis
Không nên phức tạp hóa các khái niệm khi mà trong eBook đã viết quá nhiều từ để cố nhằm giải thích một vấn đề nho nhỏ cho nên tôi sẽ viết đơn giản. Khi chúng ta gặp SQL cần thực thi trong thời gian dài và kết quả không thay đổi thường xuyên, nó đặc biệt thích hợp để đưa kết quả đang chạy vào cache
. Bằng cách này, các yêu cầu tiếp theo được đọc từ bộ đệm để yêu cầu có thể được phản hồi nhanh chóng. OK, đương nhiên nếu nói NHANH thì tiêu chuẩn nào gọi là NHANH. Nhanh là một cái búng tay. Đó chính là 0,36 giây
một cái búng tay.
Nếu bạn muốn tìm hiểu thêm, thì có lẽ không gì đẹp nhất là xem ở Những gì đẹp nhất Redis đều nằm ở đây!
Tính đồng thời trong Redis
Trong trường hợp đồng thời lớn, à khoan nếu bạn chưa biết Tính đồng thời là gì? Có thể xem ví dụ này, hơn nữa là tất cả các yêu cầu truy cập trực tiếp vào cơ sở dữ liệu và cơ sở dữ liệu sẽ gặp ngoại lệ kết nối. Tại thời điểm này, bạn cần sử dụng redis
để thực hiện thao tác đệm, để yêu cầu có thể truy cập redis
trước thay vì truy cập trực tiếp vào cơ sở dữ liệu. Đơn giản vậy thôi.
Nhược điểm của việc sử dụng redis là gì?
Khi mà mọi người đều viết về các ưu điểm của Redis. Thì họ lại quên một điều đó là sự trả giá cho việc sử dụng redis. Mọi người đã sử dụng redis lâu như vậy, vấn đề này nhất định phải hiểu, về cơ bản khi sử dụng redis sẽ gặp một số vấn đề, chỉ có một số vấn đề phổ biến. Ở đây theo tôi là 4 nhược điểm.
(1) Các vấn đề về tính nhất quán ghi kép của bộ nhớ cache và cơ sở dữ liệu
(2) Sự cố tuyết lở bộ nhớ cache
(3) Sự cố hỏng bộ đệm
(4) Vấn đề cạnh tranh đồng thời của bộ đệm
Cá nhân tôi nghĩ rằng bốn vấn đề này là tương đối phổ biến trong các dự án, và các giải pháp cụ thể sẽ được đưa ra ở bài này.
Vậy thôi, xin chào!