SOA - Обзор

Что такое сервис-ориентированная архитектура (SOA)?

Сервисно-ориентированная архитектура - это архитектурный проект, который включает набор сервисов в сети, которые взаимодействуют друг с другом. Сложность каждой услуги не заметна для другой службы. Услуга - это вид операции, которая четко определена, автономна, которая предоставляет отдельные функции, такие как проверка данных счета клиента, печать банковских выписок и т. Д., И не зависит от состояния других услуг.

История

Первый отчет, опубликованный аналитиками по SOA Roy W.Schulte и Yefim V.Natis в 1996 г.

Зачем использовать SOA?

  • SOA широко используется на рынке, который быстро реагирует и вносит эффективные изменения в соответствии с рыночными ситуациями.

  • SOA хранит в секрете детали реализации подсистем.

  • Это позволяет взаимодействовать по новым каналам с клиентами, партнерами и поставщиками.

  • Он разрешает компаниям выбирать программное обеспечение или оборудование по своему выбору, поскольку это действует как независимость от платформы.

Особенности

  • SOA использует интерфейсы, которые решают сложные проблемы интеграции в больших системах.

  • SOA обменивается сообщениями с клиентами, поставщиками и поставщиками с помощью схемы XML.

  • Он использует мониторинг сообщений для улучшения измерения производительности и обнаружения атак безопасности.

  • Благодаря повторному использованию сервиса затраты на разработку программного обеспечения и управление будут ниже.

Преимущества

  • SOA позволяет повторно использовать сервис существующей системы, поочередно создавая новую систему.

  • Это позволяет подключать новые службы или обновлять существующие службы для соответствия новым бизнес-требованиям.

  • Он может повысить производительность, функциональность службы и легко обновить систему.

  • SOA имеет возможность настраивать или изменять различные внешние среды, и большими приложениями можно легко управлять.

  • Компании могут разрабатывать приложения, не заменяя существующие.

  • Он предоставляет надежные приложения, в которых вы можете легко тестировать и отлаживать независимые службы по сравнению с большим количеством кода.

Недостатки

  • SOA требует высоких инвестиционных затрат (означает большие инвестиции в технологии, развитие и человеческие ресурсы).

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

  • SOA не подходит для приложений с графическим интерфейсом пользователя (GUI), которые станут более сложными, когда SOA потребует интенсивного обмена данными.