Трабла, посоны! / dev :: реактор

dev реактор 
Трабла, посоны!
Один и тот же пост может отображаться сразу на двух страницах в ленте. Я так понимаю, проблема уже репортилась, но на всякий случай, step-by-step guide:
1. Переходим на первую страницу Бакемоногатари (к примеру). Последний/верхний пост - 250931.
2. Переходим с первой на вторую страницу. Первый/нижний пост перескочил с первой страницы на вторую - тот же 250931.
3. Переходим со второй на первую страницу. В отличии от шага 1, пост 250931 остается на второй странице, вместо него вверху предыдущий пост, 227110.
Думаю, понятно, что не должно быть такой херни, когда при открытии одного и того же URL разными способами отображается разный контент. Это вообще будет как-то фикситься, или самому копать?..

Подробнее
dev,реактор
Еще на тему
Развернуть
Нет, это фиксится не будет
koka koka 22.05.201421:52 ответить ссылка 0.0
Можно узнать причину?
Основная причина, по которой на реакторе нумерация не будет идеальной в том, что это влечёт слишком сложные вычисления.
koka koka 22.05.201422:02 ответить ссылка 0.0
Не хочу критиковать, но звучит, как очень херовая отмазка. Положить футер с нумерацией в кэш, обновлять при добавлении нового поста?.. Для не слишком популярных разделов это сработает, а для бездны/главной нумерацию всё равно никто не проверяет, можно сэкономить здесь.
поверь мне, я видел код некоторых таких больших проектов - там все по принципу "работает - не трогай"
мне кажется, перед тем, как давать советы, тебе стоит получше изучить фичи реактора. Давай начнём с простого. Сколько у тебя страниц на главной? У меня прямо сейчас - 4599. Уверен, что у тебя другое число.
HHgggggg _ ЩЩ|
koka koka 22.05.201422:24 ответить ссылка 0.0
У меня 6844. Идет выборка наподобие
SELECT COUNT(id) FROM posts WHERE tags NOT LIKE '%blocked_tags%'
Я неправ? Да, для каждого отдельного юзера, т.е. набора заблокированных тэгов, делать кэш неразумно. Я не спец по БД, но я не верю, что это никак нельзя оптимизировать, времени изучать "чёрный ящик" у меня сейчас тоже нет... Впрочем, можно считать, что ответ дан, как бы он ни был странен.
malgalad malgalad 22.05.201422:39 ответить ссылка -0.1
"Я неправ?" - не прав.

"Я не спец по БД" - вот с этого и надо начинать =). Можешь найти спеца и спросить, сколько будет выполняться твой запрос на таблице с 1,341,416 постов. Из этого ты сможешь посчитать, сколько дата-центров надо построить реактору, чтобы обрабатывать 50 запросов в секунду.
koka koka 22.05.201422:49 ответить ссылка 0.6
Не надо быть музыкантом, чтобы слышать, когда инструмент фальшивит. И код, что я предложил - просто псевдокод, концепция.

Серьезно, я не имею намерения учить кого-либо, как содержать популярный портал, но, блин, баг есть баг в каких бы "сложных вычислениях" он ни был. Dixi.
Твой вон тот COUNT(id) и при более простых запросах на большом количестве записей даёт ниебическую нагрузку на сервер. Я к реактору отношения не имею, но тоже сталкивался с такими проблемами в некоторых cms
Кока, а подскажи-ка мне по поводу написанного ниже - id поста меняется при его переходе из песочницы в новое или хорошее?
не меняется, конечно. Ты можешь посмотреть пост по адресу
http://joyreactor.cc/post/
и он такой всегда остаётся.
koka koka 22.05.201423:36 ответить ссылка 0.0
Ок, спасибо.
А можно ещё один вопрос? Если посты добавляются на последние (новые) страницы, то почему на более старых страницах меняется их порядок? Я так предполагаю, что их просто удаляют, но блин неужели в таком большом объёме, что в новом разница потом бывает на 3 страницы? Ну то есть вот я смотрю страничку номер ХХХ в новом, ложусь спать. Просыпаюсь, обновляю страницу и посты, которые были на ней съехали на несколько страниц в старое. Почему?
Просто интересно.
тут вероятнее всего немного другое. Как работает паджинация, если ты листаешь по порядку:
1) ты находишься на странице N. Из базы возвращается 10 постов. Но некоторые посты возможно нельзя тебе показывать (или у тебя заблокированны теги, или посты забанены, или они порнографические и т.п.).
2) чтобы показать тебе на странице всё же 10 постов, берутся посты со следующей страницы N-1 и показываются первые так, чтобы суммарно было 10
3) когда ты перелистываешь на следующую страницу (N-1), он посты берёт с того момента, с которого ты закончил читать ранее. И, соответственно, залезает на страницу N-2.

Если ты читаешь так долго, то реальное положение того, что тебе отображается может уйти на несколько страниц вперёд. Когда ты ложишься спать, твоя сессия умирает и эти данные сбрасываются. Утром ты приходишь и смотришь что реально было на этой странице.
koka koka 22.05.201423:52 ответить ссылка 0.0
Всё понял, спасибо :)
Раз уж пошла такая пьянка, правильно ли я понял, что http://joyreactor.cc/post_vote/add/%postID%/equal?token=%userID%&abyss=0 возврашает рейтинг поста, не ставля плюс или минус?
нет
koka koka 23.05.201409:24 ответить ссылка 0.0
Тогда что по-вашему оно делает? Просто интересно.
танцует с бубном конечно!
без обид, но ты кажешься немного странным >_>
Проблема, в том, что оно таки возвращает рейтинг без его изменения. Собственно, любой запрос вида http://joyreactor.cc/post_vote/add/%postID%/%someWord%?token=%userID%&abyss=0 возвращает рейтинг, кроме случая когда %someWord% - пустая строка. Если %someWord% - plus, то рейтинг плюсуется, если minus - минусуется, в остальных случаях остается без изменений, насколько мне известно.
Я в курсе, что я странный, но мне интересно, знают ли админы, как работает их сайт... похоже, не знают.
Этот вопрос не имеет отношения к теме поста, но если есть возможность задать вопрос, не открывая новый - ну, почему бы и нет.
я не думаю что это возможно пофиксить, так как за время пока ты смотришь странцу в базу добавляется новый контент, и клиент этого не знает, при переходе на следующую страницу происходит выборка предыдущих айди постов, в которые уже (после добавления новых) вошел тот который был на прошлой странице.
Ну как то так.
fortodox fortodox 22.05.201421:53 ответить ссылка 0.0
Похоже на правду, но проблема возникает и без добавления новых постов в раздел, на ровном месте.
мне кажется, у постов нет разделения на главную/фэндомы/песочницу, и при добавлении даже в новое, айди уже может сменится
id постов меняться как раз не должен.
айди не поста, а последний добавленный, ну в общем я не совсем правильно высказался)
Мне кока выше ответил на немного иной вопрос. Возможно я спрашивал именно то, что интересовало тебя, но более понятными словами.
Посмотри
Если же тебя интересует нечто другое, что не просто прихоть, а важно реактору, то можешь создать отдельный пост
Если тебе нужно было именно это, но ты не понял, то могу попробовать разжевать на пальцах, но там и так доступно было
Например, пост http://joyreactor.cc/post/1343232 - рейтинг 2.259
Результат выполнения запроса http://joyreactor.cc/post_vote/add/1343232/someRandomWord?token=%userID%&abyss=0 - 200 OK. 404 выдает, если убрать это рандомное слово, перед токеном.
OperaJ| JoyReactor - смешные y X JoyReactor - смешные > X Kamijou Tourna :: ToAru X j ф joyreactor.cc/post_vote
^	С	si5	I	©	http://ioyreactor.cc/post_vote/add/1343232/someRandomWord7tokensl	)&abyss=0
Рейтинг: 2.3
malgalad malgalad 23.05.201420:35 ответить ссылка 0.0
Хм, я так понимаю, это результат удаления комментария... whatever.
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
гифки
\меЬт/тр4
большая гифка
много гифок
\л/еЬт
синоним
тр4
синоним
подробнее»

dev реактор

гифки \меЬт/тр4 большая гифка много гифок \л/еЬт синоним тр4 синоним
v KOMMEHTAPUM 0
DarkMC
ToAru Index Anime Art
31.May.2015 20:10 ccbrnxa
Anime Paint potekite
AZ/hybrid
2.2 ©©
0
подробнее»

dev реактор удалённое

v KOMMEHTAPUM 0 DarkMC ToAru Index Anime Art 31.May.2015 20:10 ccbrnxa Anime Paint potekite AZ/hybrid 2.2 ©© 0