Как настроить проект SSIS 2012 для работы в разных конфигурациях среды?

Из форума Hibernate :

Это из книги Hibernate in Action. Хорошо прочитал это.

blockquote>

Извлечение объектов по идентификатору Следующий фрагмент кода гибернации извлекает объект пользователя из базы данных:

User user = (User) session.get(User.class, userID);

) является особенным, поскольку идентификатор однозначно идентифицирует один экземпляр класса. Поэтому для приложений обычно использовать идентификатор как удобный дескриптор для постоянного объекта. Поиск по идентификатору может использовать кеш при извлечении объекта, избегая попадания базы данных, если объект уже кэширован. Hibernate также предоставляет метод load ():

User user = (User) session.load(User.class, userID);

Метод load () старше; get () был добавлен в API Hibernate из-за запроса пользователя. Разница тривиальна:

Если load () не может найти объект в кеше или базе данных, генерируется исключение. Метод load () никогда не возвращает null. Метод get () возвращает null, если объект не может быть найден.

Метод load () может возвращать прокси вместо реального постоянного экземпляра. Прокси - это заполнитель, который запускает загрузку реального объекта при первом доступе; С другой стороны, get () никогда не возвращает прокси. Выбор между get () и load () прост: если вы уверены, что постоянный объект существует, а несуществование будет считаться исключительным, load () является хорошим вариантом. Если вы не уверены, что существует постоянный экземпляр с данным идентификатором, используйте get () и проверьте возвращаемое значение, чтобы узнать, является ли оно нулевым. Использование load () имеет еще одно значение: приложение может извлекать действительную ссылку (прокси) в постоянный экземпляр, не удаляя базу данных, чтобы получить ее постоянное состояние. Таким образом, load () не может генерировать исключение, если он не находит постоянный объект в кеше или базе данных; исключение будет выведено позже, когда прокси-сервер будет доступен. Конечно, извлечение объекта по идентификатору не так гибко, как использование произвольных запросов.

23
задан frictionlesspulley 4 March 2013 в 22:42
поделиться

1 ответ

После прочтения вашего вопроса у вас есть 3 отдельных сервера для развертывания, каждый со своим собственным экземпляром каталога служб SSIS. Вы не хотите, чтобы один сервер работал для нескольких сред. Для этого сценария ответ пользователя 756519, к сожалению, малопригоден - 10 из 10 для усилий.

Я бы проигнорировал настройку «Среды» в SSIS. Это для управления несколькими средами на одном экземпляре SQL Server.

Вместо этого я бы:

  1. установить значения параметров проекта среды 1 в решении Visual Studio и развернуть в среде 1
  2. Развернуть в среде 2
  3. Использовать SSMS, чтобы подключиться к среде 2, перейдите в раздел «Каталоги служб Integration Services», чтобы найти свой проект, щелкните его правой кнопкой мыши и выберите «Настроить». Отредактируйте параметры, как требуется для Среды 2
  4. Развертывание в Среду 3
  5. Используйте SSMS для подключения к Среде 3, перейдите в разделе «Каталоги служб Integration Services», чтобы найти свой проект, щелкните его правой кнопкой мыши и выберите «Настроить». Отредактируйте параметры, как требуется для Среды 3

Теперь вы можете продолжить разработку и развертывание своего проекта в каждой среде. Никакого дальнейшего обслуживания не требуется, если вы не добавите / удалите / переименуете параметр проекта. Когда какой-либо пакет выполняется на каждой среде / сервере, он будет следовать конфигурации, установленной через SSMS

12
ответ дан Mike Honey 4 March 2013 в 22:42
поделиться
Другие вопросы по тегам:

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