プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle WebLogic Server 12.1.3の理解
12c (12.1.3)
E56254-04
  目次へ移動
目次

前
 
次
 

1 概要

この章では、Oracle WebLogic Server 12.1.3機能の概要と、その機能を利用して企業向けソリューションを作成する方法について説明します。

この章の内容は次のとおりです。

製品の概要

Oracle WebLogic Serverは、スケーラブルな、エンタープライズ対応のJava Platform, Enterprise Edition (Java EE)アプリケーション・サーバーです。WebLogic Serverのインフラストラクチャでは、様々な種類の分散アプリケーションのデプロイメントがサポートされています。サービス指向アーキテクチャ(SOA)に基づいてアプリケーションを構築するには理想的な基盤です。SOAとは、アプリケーション・サービスの再利用を最大限にすることを目的とした設計手法のことです。Oracle SOA - サービス指向アーキテクチャを参照してください。

WebLogic ServerにはJava EE 6.0仕様が完全に実装され、標準のAPI群が用意されています。標準のAPIを使用すると、データベース、メッセージング・サービス、外部エンタープライズ・システムへの接続などの幅広いサービスにアクセス可能な分散Javaアプリケーションを作成できます。エンドユーザー・クライアントは、Webブラウザ・クライアントまたはJavaクライアントを使用してこうしたアプリケーションにアクセスします。また、Java EEモデルに対する代替手段を提供するJavaアプリケーションのプログラミング・モデルである、Spring Frameworkもサポートします。「プログラミング・モデル」を参照してください。

Java EEを実装してWebLogic Serverを使用すると、企業のミッション・クリティカルなアプリケーションを堅牢かつセキュアで、可用性が高く、スケーラブルな環境にデプロイできます。WebLogic Serverインスタンスのクラスタを構成して負荷を分散したり、ハード・ウェアや他の原因による失敗が発生した場合に余裕をもって対応したりするための機能が備わっています。新しく導入された診断ツールでは、システム管理者によるデプロイ済みアプリケーションおよびWebLogic Server環境自体のモニターおよびパフォーマンス・チューニングが可能です。また、人の手を煩わせず自動的にアプリケーションのスループットをモニターおよびチューニングするように構成することもできます。サービスへのアクセスは豊富なセキュリティ機能によって保護され、企業データをセキュアに保つことで悪意のある攻撃を防止できます。

図1-1では、全体的なOracle Fusion MiddlewareスタックにおけるWebLogic Serverの位置づけを示します。

図1-1 Oracle Fusion Middlewareの概要

図1-1の説明が続きます
「図1-1 Oracle Fusion Middlewareの概要」の説明

プログラミング・モデル

WebLogic Serverでは、Java EE 6.0仕様を完全にサポートしています(http://www.oracle.com/technetwork/java/javaee/tech/index-jsp-142185.html)。詳細については、次のWebLogic Serverのプログラミング・ガイドを参照してください。

  • Webアプリケーションでは、サーブレットおよびJavaServer Pages (JSP)のJava EE標準に基づいて動的なWebページをデプロイメントするための基本的なJava EEメカニズムが提供されます。Webアプリケーションは、HTMLページ、イメージ・ファイルなどの静的なWebコンテンツの提供にも使用されます。

  • Webサービスでは、ネットワーク上の他のシステムで利用でき、分散型Webベース・アプリケーションのコンポーネントとしても使える、一連の共有機能が提供されます。

  • XMLには、データ交換、コンテンツを表示とは無関係に格納する手段、などの機能があります。

  • Java Messaging Service (JMS)を使用すると、メッセージを交換してアプリケーション同士で通信できます。メッセージとは、異なるアプリケーション間の通信を調整するために必要な情報が含まれている、リクエスト、レポート、およびイベントです。

  • Java Database Connectivity (JDBC)では、DBMSリソースへのプール機能付きアクセスが提供されます。

  • リソース・アダプタでは、EIS (エンタープライズ・インフォメーション・システム)への接続機能が提供されます。

  • Enterprise JavaBeans (EJB)では、データおよびビジネス・ロジックをカプセル化するためのJavaオブジェクトが提供されます。

  • Remote Method Invocation (RMI)は、アプリケーションでリモート・オブジェクト上のメソッドをローカルに呼び出せるようにする、分散オブジェクト・コンピューティングのJava標準です。

  • セキュリティAPIを使用すると、お使いのJava EEアプリケーションに認証と認可の機能を統合できます。セキュリティ・プロバイダAPIを使用して、独自のカスタム・セキュリティ・プロバイダを作成することもできます。

  • WebLogic Tuxedo Connectivity (WTC)では、WebLogic ServerアプリケーションとTuxedoサービス間の相互運用性が提供されます。WTCを使用すると、WebLogic ServerクライアントからTuxedoサービスを呼び出したり、サービス・リクエストにレスポンスするためにTuxedoクライアントからEJBを呼び出したりできます。

  • Coherenceでは、WebLogic Serverアプリケーション向けの分散キャッシング機能とデータ・グリッド機能を実現します。

  • 「WebLogic Serverアプリケーション開発の概要」では、開発者用ツールおよびWebLogic Serverアプリケーションのコーディングのベスト・プラクティスを提供します。

さらに、WebLogic Serverは、Javaプラットフォーム用のオープン・ソース・アプリケーション・フレームワークであるSpring Frameworkを使用して開発したアプリケーションをサポートします。『Oracle WebLogic Server Springアプリケーションの開発と管理』では、Springアプリケーションを開発およびデプロイするときに使用されるSpringおよびWebLogic Serverサポートの概要を提供します。また、WebLogic ServerのためにSpringアプリケーションを書き込む方法の例を提供します。http://www.springsource.org/上でSpringSourceも参照してください。

高可用性

次のWebLogic Serverの機能とツールにより、高可用性を備えたスケーラブルなアプリケーションのデプロイメントがサポートされています。

  • WebLogic Serverクラスタでは、作業負荷を複数のWebLogic Serverインスタンスに分散することにより、アプリケーションにスケーラビリティと信頼性が提供されます。着信リクエストを、処理される作業量に基づいて、クラスタ内のWebLogic Serverインスタンスに転送できます。ハードウェアまたは他の原因により失敗が発生した場合、他のクラスタ・ノードでセッション状態を利用でき、そのノードで障害の起きたノードの作業を再開できます。さらに、クラスタを実装すると、サービスをホストするマシンが1台だけの場合にも、失敗発生時にはそのサービスを別のノードに移行できます。

    HTTPセッション状態については、クラスタ内のサーバー群に渡るレプリケートに加えて、複数のクラスタに渡るレプリケートも可能なため、複数の地理的領域、電力供給網、インターネット・サービス・プロバイダに渡る可用性とフォールト・トレランスが拡張されています。

  • Coherenceクラスタでは、データを任意の数のクラスタ・メンバーに分散することにより、スケーラビリティとフォルト・トレランスを実現します。これにより、データは常に使用可能になり、WebLogic Serverでホストされているアプリケーションから容易にアクセスできるようになります。

    さらに、Webアプリケーションで、HTTPセッションの状態の格納とレプリケートにCoherenceデータ・グリッドを採用することで、スケーラビリティ、フォルト・トレランスおよびパフォーマンスを向上させることができます。

  • ワーク・マネージャでは、定義したルールに基づいて、さらには実際の実行時パフォーマンスの統計をモニターすることによって、作業の優先順位を決められます。こうした情報は、後にアプリケーションのパフォーマンスを最適化するためにも使用されます。ワーク・マネージャはWebLogic Serverドメイン全体に対して適用することも、特定のアプリケーションやコンポーネントに適用することもできます。

  • 過負荷保護機能では、過負荷状態の検出、回避、およびその状態からの回復ができます。

  • ネットワーク・チャネルでは、ネットワークのトラフィックをその種類に基づいて複数のチャネルに分割することにより、ネットワーク・リソースの効率的な利用を簡単にできるようにします。

  • WebLogic Server永続ストアは、永続性を必要とするWebLogic Serverのサブシステムおよびサービスに対する、組込み型の高性能なストレージ・ソリューションです。たとえば、永続JMSメッセージを格納したり、ストア・アンド・フォワード機能を使用して、メッセージを一時的に格納してから送信したりできます。永続ストアは、ファイルベースのストアまたはJDBC対応データベースの永続性をサポートします。

  • ストア・アンド・フォワード・サービスを使用すると、複数のWebLogic Serverインスタンスに分散されているアプリケーション間でメッセージを確実に配信できます。ネットワークの問題やシステム障害が原因で、メッセージの送信時に宛先が使用不能になっている場合、メッセージはローカルのサーバー・インスタンスに保存され、リモートの宛先が使用可能になった時点で転送されます。

  • 企業向け開発ツールを使用すると、開発フェーズから本番環境へのアプリケーションのデプロイメントと移行を簡単に行えます。

  • 本番再デプロイメントを行うと、古いバージョンのエンタープライズ・アプリケーションで処理中の状態にある作業を中断せずに、新しいバージョンのアプリケーションをデプロイできます。

診断フレームワーク

WebLogic診断フレームワークはモニターおよび診断を行うサービスです。このサービスを使用すると、実行中のサーバーおよびそのサーバーにデプロイされているアプリケーションで生成された診断データの作成、収集、分析、アーカイブ、およびその診断データへのアクセスが可能になります。この診断データによってWebLogic Serverインスタンスとデプロイされているアプリケーションの実行時のパフォーマンスを把握できます。また、発生したフォルトやパフォーマンス・ボトルネックを特定したり診断したりすることも可能です。

セキュリティ

WebLogic Serverのセキュリティ・アーキテクチャでは、アプリケーションをWeb上で利用可能にする際のセキュリティ上の問題を扱うために設計された、包括的で柔軟性に富んだセキュリティ・インフラストラクチャが提供されています。WebLogicセキュリティは、WebLogic Serverアプリケーションを保護するためにスタンドアロンで使用することも、最高レベルのセキュリティ管理ソリューションを表す企業全体のセキュリティ管理システムの一部として使用することもできます。「WebLogicセキュリティ・サービスの概要」を参照してください。

クライアント・オプション

WebLogic Serverでは、ブラウザ・ベースのWebアプリケーション・クライアントに加えて様々な種類のクライアントがサポートされており、多機能なGUIアプリケーションを作成することも、簡単なコマンド行ユーティリティを作成することもできます。こうしたクライアントの種類には、RMI-IIOP、T3、Java SEクライアント、Java EEシン・クライアント、CORBA/IDLクライアント、BEA Tuxedoと通信するC++クライアントなどがあります。『Oracle WebLogic Serverスタンドアロン・クライアントの開発』を参照してください。

Oracle WebLogic Suiteとの統合

WebLogic Serverは、統合されたOracle WebLogic Suite Javaインフラストラクチャ内でコア・アプリケーション・サーバー・ランタイムを提供します。この統合インフラストラクチャでは、アプリケーション・パフォーマンスとアプリケーションの可用性の向上ができます。また、これによって、アプリケーション・サービス品質が高まり、予測可能で信頼性のあるアプリケーション・スケーラビリティを実現できます。WebLogic Suiteでは、Oracle JDeveloperとEclipse用のOracle Enterpriseパックに基づいた生産的な高い開発ツール、およびOracle Enterprise Managerで大規模な管理と操作ができる完全な統合管理が含まれています。WebLogic Suiteの開発、ランタイムと管理機能は、ミッション・クリティカル・エンタープライズ・アプリケーションを実装するための基礎を提供します。

WebLogic Suiteは、次のサーバー側コンポーネントで構成されています。

  • Oracle WebLogic Server

  • Oracle Coherence

    Oracle Coherenceを使用すると、使用頻繁度の高いデータへの迅速かつ信頼性のあるアクセスを実現することにより、企業はミッションクリティカルなアプリケーションを予測どおりに拡張できるようになります。Oracle Coherenceは自動的かつ動的に複数のサーバー上のメモリにデータを分割し、サーバーで障害が発生した場合でも、データの可用性およびトランザクションの整合性を保証します。

    WebLogic Serverには、CoherenceクラスタおよびCoherenceベースのアプリケーションの管理とデプロイメントを簡素化するCoherenceコンテナが用意されています。

  • Oracle TopLink

    Oracle TopLinkを使用して、永久性のあるオブジェクト指向のデータをリレーショナル・データベースに格納する高性能アプリケーションを構築できます。オブジェクト指向のデータはリレーショナル・データかXML (Extensible Markup Language)エレメントに変換されます。

    Oracle TopLinkは高度なオブジェクト永続性およびオブジェクト変換フレームワークであり、開発と保守にかかる労力を削減して、エンタープライズ・アプリケーションの機能性を高める開発ツールと実行時機能を提供します。

    Oracle TopLinkには、Java EEおよびJava SE環境でのEJB 3.0のサポートや、EJB 2.nのコンテナ管理の永続性(CMP)のサポートが含まれています。Oracle TopLinkは、Oracle WebLogic Server、OC4J、SunAS、JBoss、IBM WebSphereなどの様々なアプリケーション・サーバーと統合できます。

他のシステムとの統合

WebLogic Serverには、お使いのアプリケーションと様々なシステムを統合するためのツールが豊富に用意されています。これらのツールには、Webサービス、リソース・アダプタ、JMS .NETクライアント、JMS Cクライアント、およびJMSプロバイダ・オプション、アドバンスト・キューイングおよびRMIの統合に使用するツールが含まれています。

Webサーバーとの統合

WebLogic Serverをインストールすると、ApacheやMicrosoftのWebサーバーとWebLogic Serverを連携するためのプラグインも提供されます。通常は、これらのWebサーバーで静的なHTMLコンテンツを処理しながら、JSPなどの動的なWebコンテンツのリクエストをWebLogic Server環境に転送します。

WebLogic Server APIのサンプルとサンプル・アプリケーション

WebLogic Serverをインストールすると、Java EE APIおよび他のWebLogic Serverの機能を示すサンプル・コードも提供されます。これらのサンプル・コードを利用しながら作業するには、WebLogic Serverをインストールする際にカスタム・インストール・オプションを選択し、WebLogic Serverのサンプルのインストールを選択します。サンプル・コードにアクセスするには、startWebLogicEx.cmdまたはstartWebLogicEx.shスクリプトをORACLE_HOME/user_projects/domains/wl_serverから起動します。ORACLE_HOMEは、Oracle WebLogicのインストール時にOracleホームとして指定したディレクトリです。サンプル・コードが利用可能な状態になれば、追加サンプルをダウンロードすることもできます。

上記のようにサンプル・コードをインストールすると、サンプル・コードと一緒に、Avitek Medical Records (MedRec)という完全なサンプル・アプリケーション(2つのバージョン)もインストールされます。

オリジナルのMedRec (WebLogic Serverの以前のバージョンに含まれていました)は、Java EEコンポーネントのあらゆる局面を簡潔にデモンストレートする、WebLogic Serverのサンプル・アプリケーション・スイートです。MedRecはあらゆるレベルのJava EE開発者に対応する学習用ツールとして設計されたものです。それは、各Java EEコンポーネントの使用方法、およびコンポーネントの対話やクライアント開発のベスト・プラクティスとなるデザイン・パターンを例示します。また、MedRecはWebLogic Server上でアプリケーションを開発するためのベスト・プラクティスを提示します。

MedRecのSpringバージョン(MedRec-Spring)は、Spring Frameworkを使用して再キャストしたMedRecです。WebLogic Server上でSpringアプリケーションを開発する場合は、MedRec-Springサンプル・アプリケーションをレビューしてください。SpringからのWebLogic Serverのエンタープライズ機能の利用方法を説明するために、コアJava EEコンポーネントをそれに対応するSpringに置き換えてMedRecを再構築しました。MedRec-Springでは、オリジナル・バージョンのMedRecの機能がSpringを使用して再実装されています。詳細は、MedRec-Springサンプルを参照してください。

MedRecを起動するには、startWebLogic.cmdまたはstartWebLogic.shスクリプトをORACLE_HOME/user_projects/domains/medrecから起動します。ORACLE_HOMEは、Oracle WebLogic Serverのインストール時にOracleホームとして指定したディレクトリです。

MedRec-Springを起動するには、startWebLogic.cmdまたはstartWebLogic.shスクリプトをORACLE_HOME/user_projects/domains/medrec-springから起動します。ORACLE_HOMEは、Oracle WebLogic Serverのインストール時にOracleホームとして指定したディレクトリです。

更新

以前のバージョンのWebLogic Serverに実装されているアプリケーションを現在のWebLogic Serverの環境に移行する際に役立つツールおよびドキュメントが提供されています。『Oracle WebLogic Serverのアップグレード』を参照してください。