Size: a a a

Чат конференции HighLoad++

2020 April 16

AS

Andrey Smirnov in Чат конференции HighLoad++
используется какое-то (возможно, невидимое пользователю) поле, которое определяет порядок записей
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
и запрос типа WHERE order_field > [marker] LIMIT 50
источник

DD

Dan Dan in Чат конференции HighLoad++
Andrey Smirnov
используется какое-то (возможно, невидимое пользователю) поле, которое определяет порядок записей
спасибо, да, предполагаем использовать timestamp. просто может есть какие-то best практики?
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
этот способ устойчив к удалению/добавлению, а также позволяет двигаться вверх и вниз, и делать уведомления о новых записях, если необходимо
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
клиент передает маркер последнего видимого элемента и направление движения, а сервер отдает элементы, подходящие под запрос
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
может сочетаться с кешированием на стороне клиента и подгрузкой с сервера, опять-таки поле маркера управляет инвалидацией кеша на клиентской стороне
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
короче, можно много всего сделать с такой конструкцией
источник

DD

Dan Dan in Чат конференции HighLoad++
Andrey Smirnov
этот способ устойчив к удалению/добавлению, а также позволяет двигаться вверх и вниз, и делать уведомления о новых записях, если необходимо
Насколько я понял вы говорите о том, как сквозным образом нумеровать записи? А вот если записи создаются с нескольких разных машин одновременно. Должен быть один процесс который уникальным образом пронумерует их?
источник

DD

Dan Dan in Чат конференции HighLoad++
В таком случае, например пронумеровали их, а затем идет поиск по расстоянию, этот скрытый номер становится неупорядоченным. И как тут поступить? Или я вас неправильно понял?
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
упорядоченность может быть любая, например, по паре (дата, ID)
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
лишь бы это был строгий порядок
источник

AT

Al T in Чат конференции HighLoad++
Dan Dan
Насколько я понял вы говорите о том, как сквозным образом нумеровать записи? А вот если записи создаются с нескольких разных машин одновременно. Должен быть один процесс который уникальным образом пронумерует их?
Либо должен быть сервис с поддержкой sorted sets например редис откуда можно упорядочено читать
источник

DD

Dan Dan in Чат конференции HighLoad++
Al T
Либо должен быть сервис с поддержкой sorted sets например редис откуда можно упорядочено читать
То есть поискали, положили в редис, пронумеровали?
источник

AS

Andrey Smirnov in Чат конференции HighLoad++
Redis скорее как внешний индекс может быть, но не заменяет идеи упорядоченности записей в каком-то смысле
источник

AT

Al T in Чат конференции HighLoad++
Dan Dan
То есть поискали, положили в редис, пронумеровали?
Я это предложил применительно к вашему вопросу о нескольких воркерах создающих записи. В этом случае если вы кладёте в редис ID и таймстапм то редис вам сможет их вернуть отсортированным по таймстампу даже если они добавлялись в редис в другом порядке например если один из воркеров более загружен и с большей задержкой писал в редис
источник

AT

Al T in Чат конференции HighLoad++
Вместо таймстампа может быть orderid естественно
источник

0

0ef1r in Чат конференции HighLoad++
Кто может завтра на конференции в зум зайти
источник

0

0ef1r in Чат конференции HighLoad++
?
источник

0

0ef1r in Чат конференции HighLoad++
Ссылку дам и пароль
источник
2020 April 17

p

ppavel in Чат конференции HighLoad++
0ef1r
Кто может завтра на конференции в зум зайти
Которой конференции?
источник