Size: a a a

2020 December 19

АГ

Алексей Гевондян... in PHP
вот и да то, несколько надуманный кейс
источник

АГ

Алексей Гевондян... in PHP
Андрей Крошкин
Ребят, такой вопрос созрел: Кто как решает проблему отставания слейвов? Понятно, что на какое-то небольшое время они будут отставать. Вот например, клиентское приложение присылает нам свой часовой пояс и мы должны его сохранить в базу с привязкой к пользователю, идентификатор пользователя уникален в таблице. Т.е. я должен проверить существует ли запись в таблице для данного пользователя и обновить её или создать новую. Но чтение всегда со слейва.
постгря?
источник

АК

Андрей Крошкин... in PHP
Не, мускуль.
источник

AM

Artem Molotov in PHP
Dmitriy Tkachenko
Стремится к нулю и ноль - это разные вероятности.
Никто и не спорил. Однако поверить в ошибку генератора рандомных чисел или самой либы куда проще
источник

АГ

Алексей Гевондян... in PHP
тогда в @mysql_db еще могу посоветовать сходить. там больше инфы по теме может быть.
источник

АК

Андрей Крошкин... in PHP
Вопрос больше не про мускуль, а про реализацию. Сейчас я создаю лок и сперва проверяю его, если он есть и значение отличается или его нет, то уже в бд иду. Но таких данных очень много (версия приложения, часовой пояс, etc), очень много локов получается на одного пользователя
источник

АК

Андрей Крошкин... in PHP
Проект на симфе
источник

АК

Андрей Крошкин... in PHP
Вощем история с локами мне не очень нравится, возможно есть какое-то более элегантное решение без них
источник

DK

Daniil Kuznetsov in PHP
Андрей Крошкин
Вощем история с локами мне не очень нравится, возможно есть какое-то более элегантное решение без них
Перейти на галеру?
источник

АК

Андрей Крошкин... in PHP
Daniil Kuznetsov
Перейти на галеру?
В чем профит будет?
источник

DK

Daniil Kuznetsov in PHP
Андрей Крошкин
В чем профит будет?
Нет слейвов, нет проблем.
Там есть различные реализации под разные бд.
источник

SB

Sergei Baikin in PHP
Андрей Крошкин
Вопрос больше не про мускуль, а про реализацию. Сейчас я создаю лок и сперва проверяю его, если он есть и значение отличается или его нет, то уже в бд иду. Но таких данных очень много (версия приложения, часовой пояс, etc), очень много локов получается на одного пользователя
Не лочить. Просто сохранять то что пользователь прислал.
источник

АК

Андрей Крошкин... in PHP
Daniil Kuznetsov
Нет слейвов, нет проблем.
Там есть различные реализации под разные бд.
))) там есть свои особенности
источник

АК

Андрей Крошкин... in PHP
Sergei Baikin
Не лочить. Просто сохранять то что пользователь прислал.
😂
источник

SB

Sergei Baikin in PHP
Нормальное решение проблемы. Не увидел в ваших сообщениях что то что заставляет лочить. И при чем тут слейвы.
источник

АК

Андрей Крошкин... in PHP
Sergei Baikin
Нормальное решение проблемы. Не увидел в ваших сообщениях что то что заставляет лочить. И при чем тут слейвы.
Да чем же это решение? Зачем писать одно и то же каждую секунду?
источник

SB

Sergei Baikin in PHP
Андрей Крошкин
Да чем же это решение? Зачем писать одно и то же каждую секунду?
Ну тогда вопрос а почему клиент пишет одно и тоже каждую секунду?
Возможно строит разобраться с первопричиной а не костыли пихать?
источник

DK

Daniil Kuznetsov in PHP
Ну ещё вариант, если ты в рамках одной сессии делаешь запись и потом чтение из слейва, то чтение можно потом не делать, а использовать присланные данные.
источник

АГ

Алексей Гевондян... in PHP
on duplicate do nothing / on duplicate update
источник

АК

Андрей Крошкин... in PHP
Алексей Гевондян
on duplicate do nothing / on duplicate update
Это если на нативном, но мы стараемся не прибегать к нему.
источник