Size: a a a

2020 March 14

PF

Petr Filippov in Laravel Pro
а еще все это в транзакции :D
источник

YV

Yushkevich Vitaly in Laravel Pro
В целом - надо понять, чем готов пожертвовать. Автоинкрементный id - не самая большая проблема. можно вообще на UUID уйти, так то
источник

YV

Yushkevich Vitaly in Laravel Pro
но где есть слово "геморой", там есть и слово "жертва". Забесплатно ничего не будет
источник

EG

Egor Gruzdev in Laravel Pro
Yushkevich Vitaly
В целом - надо понять, чем готов пожертвовать. Автоинкрементный id - не самая большая проблема. можно вообще на UUID уйти, так то
Точно, автоинкремент вообще можно не использовать, единствено insert into on dublicate есть только в mysql, вроде как, поэтому и нет в queryBuilder данного метода
источник

YV

Yushkevich Vitaly in Laravel Pro
в  builder есть прекраснейшие методы DB::raw и DB::statement
источник

YV

Yushkevich Vitaly in Laravel Pro
не очень понимаю, почему отсутствие публичного метода-обертки останавливает вас от использования функицонала БД, если он решает задачу?
источник

EG

Egor Gruzdev in Laravel Pro
Yushkevich Vitaly
в  builder есть прекраснейшие методы DB::raw и DB::statement
Если не планируется смена базы, до та, но если будущем планируется переход например на постгрес, то нужно быть окуратнее с raw запросами.
источник

YV

Yushkevich Vitaly in Laravel Pro
eloquent и с шардингом не умеет работать. Это не значит, что на laravel нельзя шардиться
источник

EG

Egor Gruzdev in Laravel Pro
Yushkevich Vitaly
eloquent и с шардингом не умеет работать. Это не значит, что на laravel нельзя шардиться
Не понял????
источник

YV

Yushkevich Vitaly in Laravel Pro
Egor Gruzdev
Если не планируется смена базы, до та, но если будущем планируется переход например на постгрес, то нужно быть окуратнее с raw запросами.
1) Как часто вы меняете БД на проекте в проде?
2) Запихните этот код в репозиторий / сервис и покройте тестами. После перехода тесты упадут, вы об этом узнаете от рефакторите. Разве это не так должно работать?
источник

YV

Yushkevich Vitaly in Laravel Pro
Egor Gruzdev
Не понял????
Есть такая штука, горизонтальное масштабирование называется. В eloquent нет функционала из коробки механизма для решения этой задачи. Но это не значит, что его нельзя сделать самому, используя имеющийся функционал / работая напрямую с возможностями БД и языка
источник

YV

Yushkevich Vitaly in Laravel Pro
Egor Gruzdev
Если не планируется смена базы, до та, но если будущем планируется переход например на постгрес, то нужно быть окуратнее с raw запросами.
И кстати, с таким подходом,. laravel вам не очень поможет, если вам проект потребуется резко переписать на питон или го.  Поэтому это аргументы в пользу бедных.
источник

EG

Egor Gruzdev in Laravel Pro
Yushkevich Vitaly
Есть такая штука, горизонтальное масштабирование называется. В eloquent нет функционала из коробки механизма для решения этой задачи. Но это не значит, что его нельзя сделать самому, используя имеющийся функционал / работая напрямую с возможностями БД и языка
Пример пишем в одну базу читаем из другой все это работает из коробки.
Или это не горизонтальное маштабирование.
источник

YV

Yushkevich Vitaly in Laravel Pro
Egor Gruzdev
Пример пишем в одну базу читаем из другой все это работает из коробки.
Или это не горизонтальное маштабирование.
а где тут горизонтальное масштабирование? Это в лучшем случае репликация
источник

A

Adel in Laravel Pro
Egor Gruzdev
Пример пишем в одну базу читаем из другой все это работает из коробки.
Или это не горизонтальное маштабирование.
это мастер-слейв. это не то немного
источник

YV

Yushkevich Vitaly in Laravel Pro
но к слову, если laravel не задать write доступы для второй БД, то все упадет
источник

A

Adel in Laravel Pro
Yushkevich Vitaly
а где тут горизонтальное масштабирование? Это в лучшем случае репликация
у вас там проекты с шардингом есть?
источник

YV

Yushkevich Vitaly in Laravel Pro
поэтому надо указывать доступы на запись, но контролировать на уровне кода, чтобы ничего не писать. Иначе разваливается репликация или просто все падает (в зависимости от настроек серваков)
источник

EG

Egor Gruzdev in Laravel Pro
Нет проэты не доросли до такого объема когда надо распределять хранение по разным базам.
источник

YV

Yushkevich Vitaly in Laravel Pro
Adel
у вас там проекты с шардингом есть?
да вот встала потребность. Прямо сейчас пишу. Витесс чего-то не завелся нормально
источник