Внешние приложения в системах приложений
Обновлен: Ноябрь 2007
В конструкторах распределенных систем можно описать внешние приложения, которые не будут реализованы в решении, но которые соединены с приложениями в решении. Например, внешние веб-службы можно визуализировать, на них можно создать ссылку или соединить с приложениями в решении. Дополнительные сведения см. в разделе Определение приложений на диаграммах приложений.
При разработке системы приложения с приложениями, соединенными с внешними приложениями, эти внешние приложения можно соединить и включить в систему. С другой стороны, внешние приложения можно исключить из системы и добавить в нее конечную точку прокси для каждой конечной точки потребителя в системе, соединенной с внешним приложением. Дополнительные сведения см. в разделах Определение путей обмена данными на диаграммах систем и Делегирование и предоставление поведения системы приложений.
Примечание. |
---|
Хотя в этом разделе в качестве примера рассматриваются веб-службы, эти же принципы применимы к веб-службам BizTalk, базам данных, универсальным приложениям и типам пользовательских приложений, созданных из пакета SDK SDM. Дополнительные сведения см. в разделе Типы приложений и прототипы для определения приложений. |
Эти подходы и рекомендации по их использованию рассматриваются в следующих разделах.
Including External Web Services in Systems
Excluding External Web Services from Systems
Choosing the Right Approach
Включение внешних веб-служб в системы
При соединении приложения с внешней веб-службой на диаграмме приложения эту веб-службу можно включить в систему. Включение внешней веб-службы в систему не означает развертывание этой веб-службы. Однако при включении веб-службы можно выполнить следующие задачи.
Визуализировать ссылку на внешнюю веб-службу на диаграмме системы.
Соединить несколько приложений с внешней веб-службой, чтобы указать, что эти приложения должны подключиться к тому же URL-адресу веб-службы. Дополнительные сведения см. в разделе Взаимодействие в системах приложений.
При определении развертывания для системы можно указать логический сервер, на котором следует развернуть внешнюю веб-службу. Кроме того, можно проверить существование каналов обмена данными в логическом центре данных, чтобы поддержать соединения между внешней веб-службой и приложениями. Дополнительные сведения см. в разделе Оценка развертывания систем при помощи конструктора схем развертывания.
Используя этот подход, учитывайте следующие факторы.
Конечную точку потребителя можно соединить с конечной точкой поставщика или конечной точкой прокси, но не с обеими.
При соединении конечной точки потребителя с внешней веб-службой для этой точки нельзя создать конечную точку прокси в системе. Если у этой конечной точки потребителя отсутствует конечная точка прокси, поведение конечной точки потребителя нельзя вывести за пределы системы. Для разрешения URL-адреса нельзя соединить эту конечную точку прокси с веб-службой в другой системе.
При развертывании системы необходимо указать URL-адрес конечной точки поставщика внешней веб-службы. Этот адрес необходим для настройки подключенных конечных точек потребителя.
Представление веб-приложений ASP.NET с внешними веб-службами
Если существует приложение, которое соединяется с реализованным веб-приложением ASP.NET (с помощью конечной точки поставщика веб-службы .NET) на диаграмме приложения, и нужно разработать систему, которая исключает веб-приложение ASP.NET, это приложение можно заменить внешней веб-службой. Для этого необходимо либо удалить веб-приложение ASP.NET из решения, либо создать другое решение без этого приложения и определить систему в этом решении до создания внешней веб-службы.
Примечание. |
---|
Не заменяйте веб-приложение ASP.NET на диаграмме приложения, создавая из него внешнее веб-приложение. На диаграмме приложения указать расположение конечной точки поставщика веб-службы .NET можно только один раз. Дополнительные сведения см. в разделе Практическое руководство. Задание расположения WSDL-файлов для веб-служб. |
Исключение внешних веб-служб из систем
При соединении приложения с веб-службой, которую не нужно включать в систему, для конечных точек потребителя этого приложения необходимо создать конечные точки прокси. Благодаря конечным точкам прокси можно предоставить эти конечные точки потребителя и соединить их вне системы, когда данная система включается в другие системы. Дополнительные сведения см. в разделе Делегирование и предоставление поведения системы приложений.
Примечание. |
---|
Веб-служба должна представлять собой внешнюю веб-службу или веб-приложение ASP.NET с конечной точкой поставщика веб-службы .NET. |
Используя этот подход, учитывайте следующие факторы.
При определении развертывания для системы нельзя указать логический сервер, где должна быть развернута внешняя веб-служба, на которую имеются ссылки. Кроме того, нельзя проверить существование каналов обмена данными в логическом центре данных, чтобы поддержать соединения между внешними веб-службами и приложениями, на них ссылающимися.
Совет. Для разрешения этой ситуации можно включить систему и/или внешнюю веб-службу в другую систему.
На диаграмме системы нельзя указать, что приложения в системе должны подключаться по тому же URL-адресу веб-службы.
Совет. При использовании данного подхода нужно предоставить отдельную документацию для каждого случая, в котором конечные точки прокси в системе должны подключаться по тому же URL-адресу веб-службы. Например, можно добавить комментарии в диаграмму системы. Эти сведения будут важны всем, кто использует эту систему в других системах. Дополнительные сведения см. в разделе Практическое руководство. Добавление комментариев к диаграммам распределенных систем.
При развертывании системы с конечными точками прокси (потребителя) в качестве изолированной, то есть вне контекста другой системы, как часть процесса развертывания необходимо указать URL-адрес веб-службы каждой конечной точки прокси. Эти адреса необходимы для настройки конечных точек потребителя, предоставляемых конечными точками прокси. При развертывании системы как части другой системы конечные точки поставщика включающей системы, соединенные с конечными точками прокси потребителя, предоставят источник для URL-адресов.
Выбор правильного подхода
При наличии автономной системы, которая будет развернута как изолированная (не включенная в другую систему), можно включить внешние приложения, универсальные приложения или типы пользовательских приложений вместе с приложениями, соединенными с ними в системе. Если предполагается включить систему в другие системы, для конечных точек потребителя потребуются конечные точки прокси, необходимые для предоставления их поведения и соединения вне системы.
Эти походы можно сочетать. Если требуется развернуть систему в качестве изолированной и включить ее в другие системы, можно создать две системы, одна в другой. Можно определить одну систему, содержащую приложения потребителя и предоставляющую их поведение с помощью конечных точек прокси. Можно определить другую систему, включающую внешние приложения и систему с конечными точками прокси. Эти внешние приложения можно соединить с конечными точками прокси. Если приложения потребителя необходимо включить в другую систему, можно воспользоваться внутренней системой. Если эту функциональность нужно развернуть независимо, можно воспользоваться внешней системой. Однако для этого подхода потребуется поддерживать две системы. Дополнительные сведения см. в разделе Практическое руководство. Объединение внешних приложений с ссылающимися приложениями в системах приложений.