очень важный (для программистов) пост
May. 26th, 2010 04:35 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Серьёзно
Upd. Попросил раззамочить.
Ну вы записывайтесь к нему в друзья; умнейший человек, между прочим.
Upd. Попросил раззамочить.
Ну вы записывайтесь к нему в друзья; умнейший человек, между прочим.
no subject
Date: 2010-05-27 07:38 pm (UTC)SOA вообще декларирует не реализацию, а подход. Чтобы было понятно, приведу пример. Допустим у вас есть задача аутентификации и авторизации юзера.
Самый простой вариант имплементации, это получение от юзера логина и пароля, проверка его через хранилище данных и так далее.
Но иногда некоторые сумасшедшие люди реализуют целый отдельный сервис для этих целей, у которого есть api(с которым и общается программа-клиент), есть несколько реализаций(для разных протоколов). Иногда даже специальнвй протокол, который потом оборачивается в JSON/XML и который потом доставляется через HTTP/SOAP/TCP.
Отсюда и растут все эти AuthImpl и так далее.
Зачем?
А потому что проектов у компании много, она может даже прикупить что-то на стороне и надо подумать об интеграции(всем хочется же, чтобы юзер залогинился 1 раз, и имел доступ на все сервисы). Таким образом, проект, который написан на php может быть интегрирован(нужно будет реализовать только клиента для сервиса, через доступный протокол).
Могу еще пример вспомнить. Интеграция сервиса прогноза погоды с вики(с информацией о приметах из википедии). Или еще. Интеграция тв программы с обсуждениями в блогах(это уже Яндекс).
Понятное дело, что прежде чем это применять, архитектор должен обосновать выбор таковой архитектуры.
Из ваших постов я не понял, недовольны ли вы архитектурой SOA в целом, ее имлементацией или ее неоправданным(по вашему мнению) применением.