Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
WSO2_diplom.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.74 Mб
Скачать

2.5.7 Фреймворк Spring

Spring используется для больших корпоративный приложений, там есть все для этого необходимое.

Основная функция Spring - интеграция слоев приложения в одно целое при помощи шаблона Dependency Injection.nDependency Injection определяет зависимости компонента от других компонентов на уровне интерфейсов.

Spring Framework может быть рассмотрен как коллекция меньших фреймворков или фреймворков во фреймворке. Большинство этих фреймворков может работать независимо друг от друга, однако, они обеспечивают большую функциональность при совместном их использовании. Эти фреймворки делятся на структурные элементы типовых комплексных приложений:

3. Реализация

3.1 Описание архитектуры приложения

Рис. 8 Компонентная диаграмма

На рис. 8 изображена компонентная диаграмма модуля парковки приложения. Она состоит из 6 основных компонентов:

  • HeadUnit. Устройство, которое запрашивает услугу (устройство навигации в автомобиле), посылает свой запрос на Device Gateway.

  • DeviceGateway. Все запросы, поступающие от внешних устройств, попадают на DeviceGateway. Device Gateway действует как прокси между мобильными устройствами или приборами, установленными в автомобиле, и другими кластерами. Device Gateway представляет собой группу компонентов, отвечающих за обработку входящих сообщений или запросов на обслуживание с мобильных устройств или других клиентов сети. Этот компонент является прокси-сервисом, который определяет источник запроса и перенаправляет запрос к нужному сервису. В случае модуля парковки это Parking EndUserService.

Входящий запрос перенаправляется в целевую службу, которая является частью кластера "End User Service".

  • EndUserService. Компонент содержит веб-представление, сервисы для модуля парковки и другие необходимые составляющие для работы приложения (API, контроллер для обработки запросов клиента и т.д.). Для получения необходимой информации о парковочных местах, приложение отсылает запрос к внешним сервисам. Используется два внешних сервиса, выбор сервиса происходит в зависимости от текущего положения автомобиля (от страны). В случае, если автомобиль расположен в Европе, используется сервис EuropeService, если в Японии, то выбор сервиса – JapanService. Использование двух сервисов обусловлено той предоставляемой информацией, которую сервис может выдать. Так, автомобиль может находиться за пределами европейской части (в частности, Японии), а EuropeService не может предоставить информацию об этой стране. В соответствии со спецификой работы с внешними сервисами, потребовалось выделить два провайдера, каждый из которых обрабатывает требуемую информацию и преобразовывает ее к необходимому формату для дальнейшей передачи этой информации приложению и ее обработки соответствующим образом.

  • ServiceIntegration. Данный компонент содержит сервисы для управления, мониторинга и администрирования платформы. Этот слой соединяет все другие, и наследует управление интерфейсами и сервисные адаптеры. В этом компоненте содержатся два прокси-сервиса, работающих с внешними сервисами. При обращении к внешнему сервису обращение идет не напрямую, а через прокси. Главная задача прокси-сервиса - перенаправление запроса. Для каждого провайдера используется свой прокси.

  • EuropeService. Внешний сервис. Запросы к нему поступают от прокси-сервиса PY_EuropeAdapter.

  • JapanService. Внешний сервис. Запросы к нему поступают от прокси-сервиса PY_JapanAdapter.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]