Bạn có thể sử dụng các bộ được sắp xếp trong redis. Số lượt xem hoặc số câu trả lời của bạn có thể là điểm số. tạo khóa dựa trên dấu thời gian. Phương pháp tập hợp đã sắp xếp zrevrangebyscore sẽ cung cấp cho bạn thứ tự chính xác.
bạn có thể đặt thành viên của nhóm được sắp xếp là:
'YEAR_MONTH_DATE_HOUR_MINUTE_SECONDS:question_id'
Bằng cách này nếu bạn sắp xếp, các câu hỏi có cùng số điểm, sẽ được trả về theo thứ tự từ vựng. Theo cách đó, câu hỏi sau này sẽ được đặt cao hơn nếu bạn sử dụng zrevrangebyscore.
Bạn có thể tạo một bản đồ băm để ánh xạ dấu thời gian và question_id. để tra cứu nhanh hơn
Tôi đã hỏi một câu hỏi tương tự, nơi tôi cũng có ý định giải pháp. Tôi muốn một cái gì đó khác biệt nhưng nó sẽ làm chính xác những gì bạn muốn.
Redis zrevrangebyscore, sắp xếp khác với thứ tự từ vựng