в направляющих, каково различие между режимом разработки и производственным режимом?

В настоящее время я использую режим Development для своего приложения, но я не знаю, должен ли я использовать режим Production. Если имеет место, как я передаю все свои данные режиму Production?

Будет риск представления ошибок в этом процессе?

6
задан bragboy 7 June 2010 в 05:25
поделиться

3 ответа

Разница между двумя средами. В Rails есть несколько окружений. У каждого своя собственная конфигурация базы данных и параметры Rails.

Вы можете использовать переменную Rails.env , чтобы внести некоторые изменения в конкретную среду.

По умолчанию среда разработки не содержит кеша и активирует автоматическую перезагрузку. Производственная среда есть со всем кешем.

Но при желании вы можете создать производственную среду, например среду разработки, или среду разработки, подобную производственной.

Вы также можете добавить некоторую новую специфическую среду.

6
ответ дан 9 December 2019 в 22:29
поделиться

Выдержка из книги Agile Development using Rails

Упрощение разработки

Вы могли заметить кое-что о развитие, которое мы делаем далеко. Поскольку мы добавляли код в наш приложение, нам не пришлось перезапускать запущенное приложение. Это было счастливо пыхтит в фон. И все же каждое изменение мы делаем доступен всякий раз, когда мы получаем доступ к приложение через браузер. Какие дает?

Оказывается, диспетчер Rails довольно умен. В режиме разработки (в отличие от тестирования или производства), он автоматически перезагружает приложение исходные файлы при поступлении нового запроса вместе. Таким образом, когда мы редактируем наши приложение, диспетчер следит за он выполняет самые последние изменения. Это отлично подходит для развития.

Однако такая гибкость стоимость - вызывает небольшую паузу после того, как вы введите URL перед заявкой отвечает. Это вызвано диспетчерская перегрузка. Для развитие - это цена, которую стоит заплатить, но в производстве это было бы неприемлемо. Из-за этого функция отключена для производства развертывание.

4
ответ дан 9 December 2019 в 22:29
поделиться

По сути, между средами Rails нет никакой разницы. Среда - это просто константа, которая устанавливается при запуске приложения Rails, на которую часто ссылаются в процессе загрузки и которая доступна для кода приложения.

Например, константа определяет, какую конфигурацию базы данных использовать для подключения и какой инициализатор среды выполнять (например, config / environment / development.rb ) во время загрузки.

Среды по умолчанию, которые существуют в приложении rails:

  • разработка
  • тест
  • производство

Некоторые параметры конфигурации различаются между средами Rails по умолчанию, но среды будут идентичны, если параметры конфигурации в соответствующие файлы config / environment / # {environment} были идентичны. Об этом свидетельствует тот факт, что дополнительные среды могут быть созданы путем добавления конфигурации подключения в config / database.yml и нового файла среды в config / environment

1
ответ дан 9 December 2019 в 22:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: