ビデオ: Oracle PowerBrowser オラクルパワーブラウザを使ってみた 2024
m ulti-tierアプリケーション は現在の業界標準であり、複数のWeb、アプリケーション、およびデータベースを構成します。ウェブブラウザを介したプレゼンテーションによりシンクライアントにコンテンツを提供するサーバ。オンラインでの購入や銀行取引のためにWebアプリケーションにログインしたとき、何が背景にあるのだろうか?
<! - 1 - >クライアント層は単にWebサーバーにアクセスするWebブラウザです。このアーキテクチャでは、コンテンツをユーザーに表示することがクライアントの主な目的です。実際の処理はブラウザ内のこのレイヤーでは発生しません。プレゼンテーションはHTML(HyperText Markup Language)を介して最も一般的に行われますが、JavaアプレットまたはActiveXコンポーネント内にあることもあり、より動的な書式設定やコンテンツにJavaScriptを使用することもできます。
<!ブラウザからWebサーバーへの通信は、セキュアな(暗号化された)データ用にHTTP(HyperText Transfer Protocol)またはHTTPSを介して行われます。 Webサーバーは概念的にはWebリスナーとして機能します。ブラウザーから要求を受け取り、ほとんど処理を行わずにフォーマット済みの結果セットを返します。 Webサーバ上では、ブラウザの要求が解析され、適切なアプリケーションサーバに送信されて処理されます。<! - 3 - >
アプリケーションサーバーコンポーネントは、Webサーバーと同じ物理サーバー上にあるか、別の物理サーバー上にある可能性があります。これまでに最も一般的なWebサーバーは、Netcraftによると、市場シェアの50%以上を占めるApacheまたはその商用デリバティブの1つです。アプリケーションサーバレベルでは、ユーザ要求は、関連するアプリケーションロジックを使用して処理される。非常に一般的な方法の1つは、Tomcat、Orion、GlassfishなどのJavaアプリケーションサーバーを使用する方法です。この場合、プログラムロジックはJava仮想マシン(JVM)内で実行され、プログラムコードの実行環境として機能します。
もう1つの一般的なツールはOracle Fusion Middleware(OFM)です。 OFM内では、プログラムはOracle Containers for J2EE(OC4J)を介してOracle Forms、Reports、Discoverer、またはJavaとして実行できます。製品に関係なく、アプリケーション・サーバー・コンポーネント内には、アプリケーション・ロジックが実行されます。
アプリケーション・サーバー上での処理中に、データの照会、作成、更新、または削除にデータベース・アクセスが必要なことが一般的です。アプリケーション・サーバーは、JDBCまたはOracle Netなどのプロトコルを介してデータベース・サーバーと通信し、データにアクセスします。この間、アプリケーション・サーバーは、アプリケーション要求を行うユーザーの代わりにデータベースにアクセスしています。
JSMITHなどの名前の異なる別のユーザーとして接続するのではなく、アプリケーションサーバーは汎用Webアカウント(WEB_USERなど)を使用して接続します。アプリケーションサーバーからデータベースへの複数の同時接続は、データベース接続が要求のデータにアクセスできるようにする
接続プール を形成します。接続プーリングはパフォーマンス上の利点です。多くのユーザーに代わって何千もの要求にサービスを提供できるデータベース接続が少ないためです。 データベースインスタンスにログインすると、一般的なWebユーザーは、実際のユーザー要求を処理しているアプリケーションサーバーに代わってDMLを照会または実行します。接続プールされたWebユーザーには、データベースへのスキーマ所有権がありません。アプリケーションサーバーに代わってデータにアクセスしたり更新したりするために必要なアクセス許可のみがあります。
この間、通常のデータベースの役割、権限、および権限が使用されます。さらに、プロシージャ、ファンクションおよびパッケージを介してPL / SQLで実装されたデータベース・プログラム・ロジックが実行されることがよくあります。
データベース結果セットがデータベース層で生成された後、それはさらに処理するためにアプリケーションサーバに渡されます。次に、結果は、ウェブサーバを介して、また、ウェブブラウザを介してユーザに提示するために、ネットワークを介して中継される。
さまざまなコンポーネントすべてが複雑になっていますか?最初は思うかもしれませんが、システムをWeb、アプリケーション、およびデータベースのコンポーネントに分割することには十分な理由があります。
"ベスト・オブ・ブリード"構成の異なるベンダーのコンポーネントを使用できます。たとえば、無料のApache WebサーバーインスタンスをTomcatまたはGlassfishと組み合わせて、安価なアプリケーションサーバーコンポーネントとして使用できます。それをOracleデータベースの力に結びつければ、低コストで安定したシステムを構築できます!
-
より多くのユーザーがオンラインになると、Web、アプリケーション、またはデータベースサーバーインスタンスを追加して、処理能力を向上させることができます。より大きなサーバーを購入するよりも、小さなサーバーを購入するだけです。
-
一連の複数のサーバーを使用すると、フォールトトレランスが得られます。これをクラスタリングといいます。 Webサーバーがクラッシュしたり、アプリケーションサーバーにメンテナンスが必要な場合は問題ありません。冗長サーバーが作業負荷を拾います。
-
これらの利点は、マルチティアシステムアーキテクチャが業界標準であり、クライアント/サーバーシステムを超えている理由を示してくれることを望みます。