Для рабочих приложений вам необходимо настроить четкий рабочий процесс разработки, особенно если над вашим приложением работает более одного человека. Рабочий процесс разработки обычно включает в себя настройку и управление несколькими средами.
Firebase имеет различные уровни поддержки рабочих процессов разработчиков и составляющих их сред. Ознакомившись с условиями и предположениями рабочего процесса разработчика на этой странице, ознакомьтесь с нашими общими рекомендациями и общими рекомендациями по безопасности при настройке проекта Firebase и ваших приложений.
О средах
При разработке программного обеспечения среда — это все аппаратное и программное обеспечение, необходимое для запуска экземпляра приложения или системы приложений.
Ряд сред обеспечивает изоляцию для разработки и тестирования программного обеспечения, не влияя на пользователей. Как показано на схеме ниже, среды высокого уровня считаются либо предпроизводственными , либо производственными , и вы можете иметь столько предпроизводственных сред, сколько необходимо. На диаграмме также описаны общие практики и особенности, связанные с каждым типом среды .
Процесс продвижения функции или выпуска через эти среды в рабочую среду называется конвейером развертывания .
Типы сред
Среда состоит из базовой инфраструктуры, необходимой для запуска и поддержки вашего приложения, его кода и данных. Разверните каждый из следующих терминов, чтобы просмотреть описания некоторых распространенных сред, включая советы по типам данных, используемых в каждом типе среды.
Среды разработки (dev)
Каждому разработчику нужна среда разработки — безопасное, изолированное место для тестирования изменений по мере их создания. В идеале каждый разработчик в вашей команде имеет доступ к своей собственной среде разработки. Кроме того, если среда разработки является локальным экземпляром, разработчик может работать намного быстрее.
Данные в среде разработки заполняются данными, которые обычно напоминают производственные данные, но никогда не должны содержать данные реальных пользователей. Он также может содержать данные, которые в прошлом вызывали ошибки, например очень длинные строки.
Среды тестирования и контроля качества
Если у вас есть автоматизированные тесты, вам нужна среда для запуска этих тестов, и вам нужно сбрасывать данные каждый раз, когда вы запускаете тестовую среду.
Если у вас есть инженеры по обеспечению качества, им может понадобиться одна среда, которую они все используют, или им могут потребоваться отдельные среды для тестирования нового кандидата на выпуск.
Данные в средах тестирования и контроля качества заполняются данными о качестве, которые обычно репрезентативны для производственных данных, а также данными, представляющими крайние случаи и примеры данных, которые вызывали ошибки в прошлом.
Промежуточные среды
Для реалистичных тестов того, как релиз будет работать в рабочей среде, вам нужна промежуточная среда, максимально точно имитирующая производственную инфраструктуру. Обычно имеется несколько промежуточных экземпляров, если вам нужно протестировать отдельные интеграции изолированно.
Вот общие различия между постановкой и продюсированием:
В промежуточном этапе могут отсутствовать некоторые функции или интеграции, что может вызвать побочные эффекты. Например, промежуточный режим может быть настроен на отказ от отправки электронной почты.
Staging может содержать анонимные данные; данные могут быть фейковыми, но они должны быть реалистичными. Поскольку промежуточная версия — это место для безопасной отладки проблем, вы можете предоставить более широкой команде доступ к промежуточным данным, чем к производственным данным. Таким образом, чтобы защитить конфиденциальность пользователей, вам не следует использовать реальные пользовательские данные при подготовке.
Производственная (прод) среда
Для каждого приложения, которое вы обслуживаете, вам нужна одна производственная среда. Это экземпляр, с которым взаимодействуют ваши пользователи.
В отличие от других сред, где вы можете изменять, удалять и/или воссоздавать данные, данные в вашей рабочей среде очень важны; потеря или изменение данных вашего продукта напрямую повлияет на ваших пользователей.
В консоли Firebase мы рекомендуем пометить проект Firebase, связанный с вашей производственной средой, как тип «производственной» среды . Этот тег может помочь напомнить вам и вашим коллегам о том, что любые изменения могут повлиять на связанные с ними рабочие приложения и их данные.
Следующие шаги
Ознакомьтесь с нашими общими рекомендациями по настройке проектов Firebase. В этом руководстве вы найдете ответы на вопросы об иерархии проектов Firebase, о том, как зарегистрировать варианты приложения и о мультитенантности.
Ознакомьтесь с общими рекомендациями по безопасности для различных сред. Вы хотите убедиться, что каждая среда и ее данные находятся в безопасности.
Ознакомьтесь с контрольным списком запуска Firebase .