Skip to content
Anatoliy Koperin edited this page Jul 3, 2018 · 1 revision

Общее описание

Проблемы конфигурирования приложения:

  • различие части параметров для разработчиков, тестовых стендов и боевых серверов
  • секретная часть конфигурации для продакшен окружения
  • быстрое и отменяемое конфигурирование избранных секций как для отладки так и для временного исправления проблем на боевых серверах
  • потребление объединенной конфигурации приложения из разных источников
  • мониторинг за изменениями в файлах конфигурации

На практике выделяется пересекающиеся группы полей для разных развертываний приложений.

  • Боевые сервера разных площадок развертывания. Например, для разных регионов.
  • Тестовые развертывания:
    • с копией текущего боевого окружения для воспроизведения багов или нагрузки
    • для тестирования нового функционала
    • для разработки

Порядок использования конфигурации в NConfiguration

  1. Разбор файлов конфигурации разных форматов (XML, JSON, INI) в DOM.
  2. Из файла можно по точному пути или его части включить содержимое других файлов.
  3. Все файлы в соответсвии с настройками могут быть включены в список наблюдения за изменениями.
  4. Если секция конфигурации зашифрована, то проводится ее расшифровка с использованием локального ключа.
  5. Из DOM может быть десериализованно множество объектов конфигурации с разной степенью заполненности полей.
  6. Объекты конфигурации объединяются с дополнением пропущенных полей и перекрытием заполненных полей.

Clone this wiki locally