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(グラフィカルユーザーインターフェイス)アプリケーションには適していません。