• 検索結果がありません。

Oracle Portal の実行時に発生する問題 の実行時に発生する問題 の実行時に発生する問題 の実行時に発生する問題

ドキュメント内 Oracle Portal構成ガイド, リリース 3.0.9 (ページ 149-153)

す。

8.5.3 Oracle Portal の実行時に発生する問題 の実行時に発生する問題 の実行時に発生する問題 の実行時に発生する問題

Oracle Portalのトラブルシューティング

Oracle Portalのトラブルシューティング

問題 問題 問題

問題 : 適切な位置に描画されている 適切な位置に描画されている 適切な位置に描画されている 適切な位置に描画されている URL アイテム・リンクをクリックする アイテム・リンクをクリックする アイテム・リンクをクリックする アイテム・リンクをクリックする ときに、エラー「

ときに、エラー「 ときに、エラー「

ときに、エラー「utl_http のコールに失敗しました」が表示されます。 のコールに失敗しました」が表示されます。 のコールに失敗しました」が表示されます。 のコールに失敗しました」が表示されます。

問題 問題 問題

問題 : 1 つまたは複数のポートレットでときどきエラー「 つまたは複数のポートレットでときどきエラー「 つまたは複数のポートレットでときどきエラー「 つまたは複数のポートレットでときどきエラー「Timeout for content={0}」が表示されます。 」が表示されます。 」が表示されます。 」が表示されます。

原因 原因原因

原因 ファイアウォール内で実行している場合は、不正なプロキシ値が 指定されている可能性があります。

解決方法解決方法解決方法

解決方法 Oracle Portalの「グローバル設定」ページでプロキシが正しく設

定されていることを確認します。このページには、「管理」タブの

「サービス」ポートレットからアクセスできます。Portalホーム・

ページの「管理」タブをクリックします。「プロキシ・サーバー」

セクションで、「HTTPサーバー」、「HTTPサーバー・ポート」、

「この文字で始まるドメインにプロキシ・サーバーを使用しない」

の各フィールドに適切な値を入力します。

6.5.1項「手順1: グローバル・ページの設定」を参照してくださ

い。

原因原因原因

原因 ポートレットが応答する前に、パラレル・ページ・エンジンがタ イムアウトになっています。{0}は、実際にはOracle Portalの初 期のバージョンで修正されずに残っているバグです。Oracle

Portalの新しいバージョンでこのエラーが発生した場合は、超過

したタイムアウト値が表示されます。

解決方法 解決方法解決方法

解決方法 使用しているリスナーのzone.propertiesファイルで、次の値 を設定して、デフォルトのタイムアウト周期を変更します。この 値には、ポートレットが応答できるだけの十分な時間を設定する 必要があります。

servlet.page.initArgs=requesttime=40

必要に応じて、値「40」を高い数値にも低い数値にも置き換えら れます。

データベースの個々のポートレットに対して、ポートレット・レ コードのタイムアウトを設定することもできます。Webポート レットでは、provider.xmlのタイムアウトを増加します。

Oracle Portalのトラブルシューティング

問題 問題 問題

問題 : Oracle Portal の実行時に、エラー「 の実行時に、エラー「 の実行時に、エラー「 の実行時に、エラー「The listener returned the following message: 503 Service Temporarily Unavailable 」が断続的に表 」が断続的に表 」が断続的に表 」が断続的に表 示されます。

示されます。 示されます。

示されます。

原因 原因原因

原因 この問題は、データベース・セッションが最大数に到達したため

に、mod_plsqlがデータベースに接続できない場合に発生します。

mod_plsqlのデータベース接続プールは、Apacheプロセス間で共

有されていないため、各プロセスで専用のプールを保持していま す。Apache mod_plsqlにプールされたデータベース接続の総数 は、発生するApacheプロセスの数と、様々なPL/SQLアプリ ケーションへのアクセスに使用されるDADの数に直接関連して います。PL/SQLゲートウェイ(mod_plsql)では、各Apacheプ ロセスのDADごとにデータベース・セッションを1つプールし ます。簡単に説明すると、mod_plsqlによってプールされるデー タベース・セッションの最大数は次のように計算されます。

NumberOfApacheProcesses*NumberOfDADs

現在、Windows NT/2000では、Apacheはマルチスレッドで動作 するため、同じデータベース接続プールをすべてのスレッドで共 有しています。Windows NT/2000のmod_plsqlによってプール されるデータベース・セッションの最大数は、次のように計算さ れます。

MaximumNumberOfApacheThreadsEverActiveForEachDAD 原則的には、どのスレッドも別のスレッドによって作成された データベース・セッションを利用できます。このため、Apacheが マルチスレッドで動作していないプラットフォームでは、慎重に 調整することが重要です。

Oracle Portalのトラブルシューティング

解決方法解決方法解決方法

解決方法 Apacheプロセスの設定は、プロセスの起動やシャットダウンが重

くならないように調整する必要があります(各プロセスがその接 続プールを解放し、新しいプロセスがそのプールを補充する必要 があります)。この調整は、Webサーバーの負荷によって管理さ れます。

データベース・セッションの最大数は、予想されるApacheプロ セスの最大数に従って設定する必要があります。http.conf ファイルの次のパラメータを編集します。

Set MaxRequests = MaxSpareServers

MaxRequestsPerchild=HighNumber

MinSpareServers=0

KeepAlive off

KeepAliveTimeOut

この設定によって、Apacheプロセスがシャットダウンすることは 非常にまれになり、Apacheプロセス/新しいデータベース接続 の作成にかかるオーバーヘッドが大幅に減少します。

解決方法 解決方法解決方法

解決方法 データベース構成ファイルのprocessesパラメータをチェック します(init$SID.ora => processes=NNN)。この数値は、

httpd.confファイルに設定されているApacheプロセスの最大 数と同じかそれ以上である必要があります。

StartServers+MaxSpareServers

この問題が発生しているかどうかを確認するには、SQL*Plusを介 してSYSとして接続し、問合せ「select username from v$session」を発行することも1つの方法です。行数のカウント

がprocessesパラメータの値とほぼ同じである場合は、プロセス

の最大数を上回っている可能性が高くなります。

解決方法 解決方法解決方法

解決方法 PL/SQL要求のみを処理するように個別のOracle HTTPサー

バー・リスナーを設定します。メインのApacheリスナーを使用 して、PL/SQL要求をすべてその新しいリスナーにリダイレクト することができます。新しいOracle9i Application Serverリス ナーに対しては、PL/SQL要求しか処理しないため、Apacheの

processesパラメータに低い値を指定します。したがって、データ

ベース・セッション数は最小限に抑えられます。

5.6項「Oracle HTTPサーバーの調整」を参照してください。

Oracle Portalのトラブルシューティング

問題 問題 問題

問題 : Oracle Portal のページにアクセスしようとするときに、一貫してエ のページにアクセスしようとするときに、一貫してエ のページにアクセスしようとするときに、一貫してエ のページにアクセスしようとするときに、一貫してエ

ドキュメント内 Oracle Portal構成ガイド, リリース 3.0.9 (ページ 149-153)

Outline

関連したドキュメント