SOA はサービス指向アーキテクチャです。サービス指向 (SO: Service Orientation) は、オブジェクト指向 (OO: Object Orientation) やコンポーネント指向 (CO: Component Orientation) と同様に、懸念事項を分解します。サービス指向はテクノロジーとは何の関係もありません。
サービス指向アーキテクチャは、明確に定義されたインターフェイスとサービス間のコントラクトを通じて、アプリケーションのさまざまな機能単位 (サービスと呼ばれる) を接続するコンポーネント モデルです。インターフェイスは中立的な方法で定義され、サービスが実装されているハードウェア プラットフォーム、オペレーティング システム、プログラミング言語から独立している必要があります。これにより、このようなさまざまなシステムに組み込まれたサービスが統一された共通の方法で対話できるようになります。
(特定の実装へのバインドを強制されない) 中立的なインターフェイス定義を持つこの特性は、サービス間の疎結合と呼ばれます。疎結合システムの利点は、その柔軟性と、アプリケーション全体を構成する各サービスの内部構造と実装が徐々に変化しても生き残れる能力であることです。一方、密結合とは、アプリケーションのさまざまなコンポーネント間のインターフェイスがその機能や構造と密接に結びついていることを意味し、アプリケーションの一部または全体に何らかの変更を加える必要がある場合に非常に脆弱になります。
疎結合システムのニーズはビジネスから生じており、頻繁に変化するポリシー、ビジネス レベル、ビジネスの優先順位、パートナーシップなどの変化する環境に適応するために、アプリケーションはビジネス ニーズに応じてより柔軟になる必要があります。ビジネスの性質に影響を与える可能性があるその他のビジネス関連の要因。環境の変化に柔軟に対応できるビジネスをオンデマンドビジネスと呼びます。オンデマンドビジネスでは、必要に応じてタスクの完了または実行方法に必要な変更を加えることができます。
ニーズに応じて、疎結合された粗粒アプリケーションコンポーネントをネットワーク経由で分散、組み合わせ、使用できるサービス指向アーキテクチャ。サービス層は SOA の基盤であり、アプリケーションから直接呼び出すことができるため、ソフトウェア エージェントと対話するシステム内の人間の依存関係を効果的に制御できます。
SOA は、粗粒度で疎結合のサービス アーキテクチャであり、サービスは、基礎となるプログラミング インターフェイスや通信モデルを必要とせず、シンプルで正確に定義されたインターフェイスを通じて通信します。 SOA は、B/S モデル、XML (標準のユニバーサル マークアップ言語のサブセット)/Web サービス テクノロジの自然な拡張として見ることができます。
SOA は、ソフトウェア エンジニアがエンタープライズ レベルのアーキテクチャのさまざまなコンポーネントの開発および展開形式を新しいレベルで理解するのに役立ち、エンタープライズ システム アーキテクトがビジネス システム全体をより高速に、より信頼性が高く、より再利用可能に設計できるようになります。 。 SOAアーキテクチャに基づくシステムは、従来に比べてビジネスの急激な変化にも冷静に対応できるようになりました。
現在、SOA の統一された定義はありません。SOA については、人によってさまざまな観点から異なる理解がある可能性があります。しかし、SOA にどのような違いがあるとしても、SOA の設計思想は依然として一般的に受け入れられています。今後も SOA の基本的な特徴をいくつか紹介していきますので、ぜひ注目してください。
上記は SOA シリーズの基本概念の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) をご覧ください。