Bộ nhớ là tài nguyên quan trọng đối với hiệu suất của Redis. Bộ nhớ đã sử dụng xác định tổng số byte được Redis cấp phát bằng cách sử dụng trình cấp phát của nó (libc tiêu chuẩn, jemalloc hoặc trình cấp phát thay thế như tcmalloc).
Bạn có thể thu thập tất cả dữ liệu chỉ số sử dụng bộ nhớ cho một phiên bản Redis bằng cách chạy “bộ nhớ thông tin”.
127.0.0.1:6379> info memory Memory used_memory:1007280 used_memory_human:983.67K used_memory_rss:2002944 used_memory_rss_human:1.91M used_memory_peak:1008128 used_memory_peak_human:984.50K
Đôi khi, khi Redis được định cấu hình không có giới hạn bộ nhớ tối đa, việc sử dụng bộ nhớ cuối cùng sẽ đạt đến bộ nhớ hệ thống và máy chủ sẽ bắt đầu phát ra lỗi “Hết bộ nhớ”. Vào những thời điểm khác, Redis được định cấu hình với giới hạn bộ nhớ tối đa nhưng chính sách xác nhận. Điều này sẽ khiến máy chủ không loại bỏ bất kỳ khóa nào, do đó ngăn chặn bất kỳ ghi nào cho đến khi bộ nhớ được giải phóng. Giải pháp cho những vấn đề như vậy sẽ là định cấu hình Redis với bộ nhớ tối đa và một số chính sách loại bỏ. Trong trường hợp này, máy chủ bắt đầu loại bỏ khóa bằng chính sách loại bỏ khi mức sử dụng bộ nhớ đạt đến mức tối đa.
Bộ nhớ RSS (Resident Set Size) là số byte mà hệ điều hành đã cấp cho Redis. Nếu tỷ lệ ‘memory_rss’ so với ‘memory_used’ lớn hơn ~ 1,5, thì nó có nghĩa là bộ nhớ bị phân mảnh. Bộ nhớ bị phân mảnh có thể được khôi phục bằng cách khởi động lại máy chủ.