Как работает нумерация страниц на домашней странице Reddit? - PullRequest
5 голосов
/ 26 сентября 2010

Reddit использует алгоритм затухания времени. Это означает, что порядок сортировки может быть изменен. Когда пользователь переходит на страницу 2, существует ли механизм, препятствующий его просмотру сообщения, которое было на странице 1, но было перенаправлено на страницу 2, прежде чем они перешли на страницу? Это просто приемлемый недостаток метода сортировки? Или первые пару страниц кэшируются для пользователя, чтобы этого не произошло?

Примечание: я понимаю, что Digg не может страдать от этой проблемы, но HackerNews и Reddit могут.

Ответы [ 2 ]

4 голосов
/ 27 сентября 2010

Со следующего URL вы видите: http://www.reddit.com/?count=25&after=t3_dj7xt

Итак, следующая страница гарантирует, что страница2 начинается с записи после t3_dj7xt - что бы это ни переводило. Это может быть выполнено с использованием идентификаторов, так что вы пройдете после = 188, затем следующая страница начнется в 189, что гарантирует, что вы не увидите тот же пост, если произошла задержка

0 голосов
/ 27 сентября 2010

Возможно, используется последний ID, а не ограничение от. Возьмите эти два примера SQL:

SELECT * FROM Stories WHERE StoryID>$LastStoryID;

вместо:

SELECT * FROM Stories LIMIT 20, 10;
...