Soa-overview

提供:Dev Guides
移動先:案内検索

SOA-概要

サービス指向アーキテクチャ(SOA)とは何ですか?

サービス指向アーキテクチャは、相互に通信するネットワーク内のサービスのコレクションを含むアーキテクチャ設計です。 各サービスの複雑さは、他のサービスには目立ちません。 サービスは、顧客アカウントの詳細の確認、銀行取引明細書の印刷などの個別の機能を提供する、明確に定義された自己完結型の操作であり、他のサービスの状態に依存しません。

歴史

1996年にアナリスト Roy W.Schulte および Yefim V.Natis によってSOAに関して公開された最初のレポート。

SOAを使用する理由

  • SOAは市場で広く使用されており、迅速に対応し、市場の状況に応じて効果的な変更を行います。
  • SOAは、サブシステムの実装の詳細を秘密にします。
  • これにより、新しいチャネルと顧客、パートナー、サプライヤーとの対話が可能になります。
  • プラットフォームに依存しないため、企業が選択したソフトウェアまたはハードウェアを選択することができます。

特徴

  • SOAは、大規模システムでの難しい統合問題を解決するインターフェースを使用します。
  • SOAは、XMLスキーマを使用して、顧客、プロバイダー、およびサプライヤーにメッセージを伝えます。
  • メッセージ監視を使用してパフォーマンス測定を改善し、セキュリティ攻撃を検出します。
  • サービスを再利用するため、ソフトウェア開発と管理のコストが低くなります。

利点

  • SOAを使用すると、既存のシステムのサービスを再利用して新しいシステムを交互に構築できます。
  • 新しいサービスをプラグインしたり、既存のサービスをアップグレードして新しいビジネス要件を設定したりできます。
  • サービスのパフォーマンス、機能を強化し、システムを簡単にアップグレードできます。
  • SOAには、さまざまな外部環境を調整または変更する機能があり、大規模なアプリケーションを簡単に管理できます。
  • 企業は、既存のアプリケーションを置き換えることなくアプリケーションを開発できます。
  • 多数のコードと比較して、独立したサービスを簡単にテストおよびデバッグできる信頼性の高いアプリケーションを提供します。

デメリット

  • SOAには高い投資コストが必要です(技術、開発、および人的資源への多額の投資を意味します)。
  • サービスが別のサービスと対話するとき、オーバーヘッドが大きくなり、入力パラメーターの検証中に応答時間とマシンの負荷が増加します。
  • SOAは、SOAが大量のデータ交換を必要とする場合により複雑になるGUI(グラフィカルユーザーインターフェイス)アプリケーションには適していません。