Chiến lược phân trang: Mã thông báo trang so với chỉ số bỏ qua / bắt đầu


8

Tôi thấy rằng ngày càng có nhiều API mới sử dụng mã thông báo trang để cho phép người dùng di chuyển giữa các trang kết quả có chứa rất nhiều mục. Tuy nhiên, từ quan điểm của người thiết kế API, tôi không rõ lợi ích của việc sử dụng mã thông báo là gì khi so sánh với việc cho phép người dùng chỉ định số lượng mục mà anh ta muốn bỏ qua.

Vì vậy, đây là những câu hỏi của tôi :

  1. Lợi ích của việc sử dụng mã thông báo trang trên chỉ mục bắt đầu là gì?
  2. Roughly, trong điều khoản cấp cao, cách triển khai mã thông báo trang điển hình theo dõi các trang? Bộ nhớ đệm tất cả các kết quả sẽ không hiệu quả. Tôi đoán rằng một số loại băm có thể được sử dụng, nhưng tôi không chắc những gì sẽ được băm để xây dựng lại kết quả.

Cảm ơn bạn

Câu trả lời:


5
  1. Lợi ích của việc sử dụng mã thông báo trang trên chỉ mục bắt đầu là gì?
  1. Mã thông báo trang rất hữu ích khi bạn không muốn người dùng chuyển đến bất kỳ trang nào đã cho mà không lấy kết quả đầu tiên. Vì mã thông báo trang tiếp theo chỉ được nhận khi bạn truy cập trang trước, người dùng sẽ không thể lưu trữ nội dung tìm kiếm và truy cập sau đó. Vì vậy, người dùng cuối không thể bỏ qua nội dung được quảng cáo (quảng cáo).

  2. Không thể thực hiện các yêu cầu song song

  1. Roughly, trong điều khoản cấp cao, cách triển khai mã thông báo trang điển hình theo dõi các trang? Bộ nhớ đệm tất cả các kết quả sẽ không hiệu quả. Tôi đoán rằng một số loại băm có thể được sử dụng, nhưng tôi không chắc những gì sẽ được băm để xây dựng lại kết quả.

Điều này có thể khác nhau, vì API là phần còn lại, tiêu chí tìm kiếm đã có, Cách đơn giản để làm là tìm kiếm lại và lấy trang dựa trên thuật toán băm. Hoặc thậm chí nó có thể lưu trữ bộ đệm tìm kiếm ... nhưng nó tùy thuộc vào việc thực hiện.


Câu trả lời tuyệt vời cảm ơn, bất kỳ con trỏ về những gì sẽ được băm trong thuật toán băm bạn đề cập? (vì truy vấn được gửi lại và trong trường hợp này, kết quả không được lưu trong bộ nhớ cache)
tobiak777 22/03/2016

1
Nó có thể là một hàm băm của số trang + một số hằng số đã biết hoặc nó có thể là một khóa cho trang kết quả được lưu trữ. Hoặc nó có thể là một cái gì đó hoàn toàn khác ...
Low Flying Pelican
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.