Эксперимент - бесконечная лента
Помните, я рассуждал про пагинацию? Про то, что хочу бесконечную ленту, но для этого нужен JavaScript, а я категорически против. Тогда я решил, что просто буду выводить по 50 постов на страницу. И заодно запустил эксперимент: при каком количестве карточек на главной упадёт скорость загрузки?
И вот сейчас на главной скопилось ровно 50 постов. Механизма разбивки на страницы до сих пор нет. И знаете что? Страница рендерится с той же молниеносной скоростью, что и раньше.
Я даже полез проверять. Думал, может, там что-то закэшировалось или браузер меня обманывает. Но нет. Всё честно.
Почему она не тормозит.
Потому что у меня SSR и Rust. Сервер не отдает кучу тяжелого JavaScript, который браузер должен скачать, распарсить и выполнить, чтобы что-то показать. Сервер отдает готовый HTML. Браузер просто берет его и рисует.
Даже 50 карточек - это пара десятков килобайт чистого текста. Это ничто. Браузеру плевать. Он разбирает это быстрее, чем ты моргнешь. Никакой тебе гидратации, никаких фреймворков в клиенте.
И вот дилемма.
Теперь сижу и думаю. Мне делать механизм пагинации или продолжить эксперимент?
С одной стороны, 50 карточек уже создают то самое ощущение постоянной ленты, о котором я мечтал. Ты листаешь, листаешь, а конца не видно. Он где-то там, за горизонтом. Ощущение бесконечности есть, и для этого не пришлось тащить жирный JS.
С другой стороны, если я добавлю еще 50 постов, будет ли он тормозить? А если добавлю 100? Где та самая грань, когда сервер скажет “хватит”?
Что решил.
Я решил продолжить эксперимент. Нафига чинить то, что и так летает? Я буду добавлять посты и смотреть, в какой момент главная начнет сдыхать.
Может, пагинация мне вообще не нужна? Может, это костыль для тяжелых сайтов на вордпрессе, а моему проекту на Rust она не уперлась?
Пока страница весит копейки и открывается за доли секунды. А 50 постов на экране выглядят как полноценная лента. Так что я продолжаю грузить контент и следить за цифрами. Результаты покажу, когда будет о чем рассказать.