Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
Сервис-ориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г. ассистент каф. МОП ЭВМ
ИКТИБ ЮФУ
18 октября 2014 г.
Архитектура и проектирование программных систем
Архитектурные стили
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
структурные (компонентные приложения, монолитные, многослойные...);
ориентированные на данные (прежде всего БД);
основанные на сообщениях
(событийно-ориентированные, асинхронные сообщения, “подписка-публикация”...)
распределённые (клиент-сервер, P2P, REST, сервис-ориентированная архитектура...)
2 / 42
Архитектурные стили
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
структурные (компонентные приложения, монолитные, многослойные...);
ориентированные на данные (прежде всего БД);
основанные на сообщениях
(событийно-ориентированные, асинхронные сообщения, “подписка-публикация”...)
распределённые (клиент-сервер, P2P, REST, сервис-ориентированная архитектура...)
3 / 42
SOA, определение
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
Cервис-ориентированная архитектура (от англ. Service-OrientedArchitecture, SOA) это такая архитектура приложения, в которой компоненты или ¾сервисы¿, имея согласованные общие интерфейсы, используют единые правила (контракты) для определения того, как вызывать сервисы и как они будут взаимодействовать друг с другом.
4 / 42
Общая схема SOA
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
5 / 42
Общая схема SOA. Веб-сервисы
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
6 / 42
Веб-сервисы
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
Веб-служба, веб-сервис (англ. web-service) это сетевая технология, обеспечивающая межпрограммное взаимодействие на основе веб-стандартов.
W3C: ¾программная система, разработанная для поддержки интероперабельного межкомпьютерного (machine-to-machine) взаимодействия через сеть¿
7 / 42
XML
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
1 <?xml version="1.0"?>
2 <note>
3 <to>Igor</to>
4<from>Vasya</from>
5 <heading>Reminder</heading>
6 <body>Don’t forget about our meeting!</body>
7 </note>
8 / 42
XSD
Сервис- |
|
|
ориентир- |
1 |
<?xml version="1.0"?> |
ованная |
||
архитектура. |
2 |
<xs:schema xmlns:xs="http://www.w3.org/2001/ |
Фрэймворк |
||
Axis2/C |
|
XMLSchema"> |
|
|
|
Данилов И. |
3 |
<xs:element name="note"> |
Г. |
4 |
<xs:complexType> |
ассистент |
||
каф. МОП |
5 |
<xs:sequence> |
ЭВМ |
||
|
6 |
<xs:element name="to" type="xs:string"/> |
|
7 |
<xs:element name="from" type="xs:string"/> |
|
8 |
<xs:element name="heading" type="xs:string"/> |
|
9 |
<xs:element name="body" type="xs:string"/> |
|
10 |
</xs:sequence> |
|
11 |
</xs:complexType> |
|
12 |
</xs:element> |
|
13 |
</xs:schema> |
|
|
|
9 / 42
WSDL
Сервисориентированная архитектура. Фрэймворк Axis2/C
Данилов И. Г.
ассистент каф. МОП ЭВМ
WSDL (от англ. Web Services Description Language) язык описания веб-сервисов, основанный на XML.
Включает в себя:
типы контейнер для описания типа данных, использующий некоторую систему типов (например, XSD);
сообщения абстрактное, основанное на типах описание данных, с помощью которых осуществляется коммуникация;
операция абстрактное описание определённого действия, поддерживаемого сервисом;
10 / 42