Для процесса случайного выбора мне нравится концепция запроса каждого клиента, когда у него будет успешный вход в систему, хотят ли они участвовать в бета-тестировании, как только будет достигнуто требуемое или требуемое количество пользователей, вы перестанете спрашивать. В базе данных я склонен хранить данные о том, на какой сервер перенаправлять пользователя, и запускать стандартный скрипт, который перемещает каждого пользователя в нужное место при входе в систему.
Мы проектируем наши приложения заранее за месяцы и избегаем изменений в существующей схеме. Причина очень очевидна, конечно, это не всегда возможно, поэтому, когда у нас есть такое изменение, мы всегда полностью документируем изменение, когда оно записывается, и планируем миграцию для этого поля как можно раньше. Таким образом, у нас есть план сражения о том, какие изменения вносятся, и мы можем найти лучшее решение, которое только возможно для нас. К сожалению, это меняется в зависимости от обстоятельств.
Мы всегда используем несколько сред, у нас есть производство, разработка и бета-версия в целом. Это означает, что мы не вмешиваемся в производственные сервисы, которые равны деньгам, у нас нет людей, которые нарушают код и отключают сервис при оптимизации.
Разработка использует GIT для мониторинга версий, и пользователи никогда не видят этого, поскольку мы получаем все виды странных и замечательных экспериментов, загруженных для игры. Он также использует свою собственную базу данных против живых данных.
С бета-версией мы обычно переносим определенные пользовательские данные, но в последнее время у нас появился лучший опыт дублирования всей базы данных и планирования конкретной даты начала бета-тестирования, что позволяет пользователям отказаться от бета-тестирования и других. согласиться с минимальными изменениями, необходимыми для поддержки этой опции. Как правило, мы выполняем миграцию новых данных между двумя базами данных один раз в день, новые и новые возможности вступают в силу только с момента переноса данных на другую платформу.
Мы также добились успеха в небольшом масштабе, используя существующую производственную базу данных для бета-тестирования некоторых новых функций, которые работали из собственной таблицы, поэтому в зависимости от того, что вы делаете с данными, использование одной и той же действующей базы данных может быть хорошим вариантом. ,
Надеюсь, это полезно для вас ... удачи с вашим помощником по тестированию.