SOAとPHP

WBOY
WBOYオリジナル
2016-06-23 14:36:271207ブラウズ

SOA と PHP

SOA とは?


SOA (Service Oriented Architecture、サービス指向アーキテクチャ) は、Gartner によって「次世代ソフトウェア アーキテクチャ」として知られる新しいサービス指向アーキテクチャ プログラミング モデルです。これは 1996 年に提案されました。2002 年 12 月に、Gartner は SOA が「現代のアプリケーション開発の分野で最も重要な問題」であると提案し、2008 年までに SOA が完全に支配的なソフトウェア エンジニアリングの実践手法になるだろうと予測しました。ソフトウェアとビジネス機能の両方の観点から、サービスは、それを呼び出すアプリケーションのコンテキストや状態に依存しない、明確に定義されたソフトウェア コンポーネントです。


技術的には、これらのサービスとそのアプリケーションへのインターフェイスです。これらのサービスの実装は SOA の中核部分です。これらのサービスは通常 Web サービスとして実装され、アプリケーションは HTTP プロトコルに基づいており、XML 形式で送信される Simple Object Access Protocol (SOAP) を通じてそれにアクセスできます。


基本的に、SOA はサービス インターフェイスのフローと関係であり、インターフェイスとその関係を設計するには、Web テクノロジ、サービスの下のテクノロジ プラットフォーム、およびそれらを採用するテクノロジ プラットフォームの知識が必要です。アーキテクトは、Web サービスを構造化する方法だけでなく、既存のアプリケーションと将来計画されているアプリケーションがそれらをどのように使用するかを理解する必要があります。サービス)を使用すると、バックグラウンド プログラムがどのように動作するかという重要性が減ります。さまざまなプログラミング言語とプラットフォームを使用して、SOA と Web サービスを実装できます。 Java EE は複雑すぎるため、5 年以内には主流の標準プログラミング モデルではなくなると予測する人もいます。 SOA を簡単な方法で実装できるのであれば、Java EE を使用する理由は明らかです。 これはプラットフォームの力です。JavaEE はアプリケーションの影響よりも常に大きくなります (一般的な開発ではすでに非常に大きなプラットフォームですが、テクノロジーとニーズは常に進化しています)。 SOA は小さなプラットフォームです。プロセス指向、オブジェクト指向、コンポーネント指向、ビジネス指向のプログラミング モデルのうち、JavaEE は現在コンポーネント指向とビジネス指向の中間に位置することがほとんどですが、SOA はビジネス指向であり、エンタープライズ アプリケーションにとって非常に有利であると言えます。 。


現在、IBM は SOA の有力勢力と言え、PHP においても SOA を積極的に推進しており (IBM や Oracle が PHP を SOA に適用しようとしている)、その大きな野心を示しています。

PHP SOA における IBM の進歩を見てみましょう:

2005.7 IBM は PHP に SDO を実装し、PHP の PECL ライブラリに提出しました

2005.12 IBM は BEA、Oracle、IONA、SAP、Siebel、Sybase、 Xcalia と Zend Company は、SOA 用の 2 つの重要なプログラミング モデル仕様、SCA (Service Component Architecture) と SDO (Service Data Object) を共同リリースしました。 Zend Corporation を含むことに注意してください。 Zend と PHP の関係は、Sun と Java の関係に似ています。


2006.3 PHP SDO v 1.0.0 リリース

2006.9 PHP SDO v 1.0.4 リリース

2006.9 PHP SCA v 0.1.0 リリース

詳細については、以下を参照してください:

SOA PHP ホームページ

実際、個別に言うとPHP における SOA は、単なる Java の移植であるため、あまり意味のあるものではありません。PHP5 の現在のオブジェクト指向プログラミング モデルは、基本的には十分に機能しており、PHP は弱く型指定され、動的に型指定されているため、いくつかの点ではさらに便利です。言語 (型ジャグリング)、SDO を実装する場合、コードの記述は Java ほど面倒ではありません (それほど多くのゲッター/セッターを記述する必要はありません)。しかし、一度導入したら、それを推進することはできるのでしょうか?この「抽象的で疎結合で粒度の粗い」ソフトウェア アーキテクチャは本当に受け入れられるのでしょうか?

PHP SOA の開発において、IBM (そしておそらく Oracle と Zend) の力だけに頼って成功することは不可能であると言えます。もちろん、繰り返しになりますが、SOA がうまく発展すれば、PHP SOA は間違いなく普及し、より多くのテクノロジー メーカーが参加するでしょう。テクノロジーが受け入れられ普及できるかどうかは、多くの場合、全体的な環境に依存します。

参考:

SOA PHP ホームページ

SCA/SDO の解釈は本格的な段階に入りました

PHP 用サービス データ オブジェクトの概要

Track

戻る: http:/ /tb.blog.csdn.net/TrackBack.aspx?PostId=1324113


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。