20% трафика направить на одну реализацию, а 80 на другую.
Сейчас я могу поднять 4 backend одного типа и 1 другого и балансировщик сам раскидает по ним запросы.
А как это сделать с процедурами, их зависимостями и т.д.?
при поднятии указывать другую схему/базу/адрес?
шардинг + выбранный сервер на новом коде?
вопрос мимо разработки. это к девопсам
Не понял. Мне предлагается где-то сделать копию всей базы?
а вы собрались тестировать на проде?
и? в чем проблема? даже для оракла есть pdb
А почему бы и да.
А где я еще столько трафика буду брать? Это бизнес-функция.
трафик можно брать с прода базу зачем с прода трогать?
ну, за такое увольняют обычно
5 лет общего режима 😊 Данные за периметр выносить нельзя.
А хранимые процедуры где? В другой базе?
Много уже уволили?
любая современная субд умеет делать копии базы вместе со схемой, данными и хранимками
да, общая практика. тестировать на проде это зашквар
Это A/B тестирование функции, а не поиск багов.
Все 1200 Тб данных? И online-репликация? Только ради сохранения подхода к проектированию из середины 90-х? Да никто не станет платить за это.
я бы поспорил. вам клиенты важны?
Смотрите, у меня есть решение за 500 рублей, и решение с хранимками за 500 000. Что же выбрать, что же выбрать 😊
если у вас 20 клиентов, то вообще пофиг
Тестирование превращается в ад. Если база 30тб приходится делать ее полную копию периодически , у прогеров своя копия для кодинга. Версионирование кода в субд когда у тебя более 5к процеруд/пакетов внутри базы не работает . Миграции сильно усложнены. Уменьшать базу зачастую безумно сложно - большое кол во зависимостей. Да и на лету это не сделать, ДБА вынужденный поднимать полную копию. Масштабирование тот ещё ужас - обычно это привозит только к вертикальному варианту. И легко так в год уходит 1млн баксов. В общем крайне не приятная штука. И да это легаси.
Я так понимаю, что не просто "у прогеров своя копия", а "у каждого прогера своя копия" ? Если Вася изменит процедуру, это зааффектит всех разработчиков. Если там баг, ему настучат всей толпой т.к. ляжет все. Ну и с unit testing то же самое. Чтобы протестить процедуру, ее надо выкатить на девелоперский сервер. Если там баг - все курят бамбук до конца тестирования и отката на "живой вариант".
Стараемся каждому не давать ,программеров под 50 штук. Жесткие ограничения на кол во стендов , соответственно планирование активностей
Сурово. А как вы при этом все эти тестовые стенды синхронизируете на уровне схемы базы? Типа кто-то добавил поля или целые таблицы. Надо всем это раскатать, чтобы кто-то не отлаживал на не актуальной схеме.
Обсуждают сегодня