web.xml


web.xmlファイルは、Yellowfinアプリケーションのシステム構成や、ディプロイ情報を提供します。Yellowfinのweb.xmlファイル、以下のディレクトリに格納されています。


Yellowfin\appserver\webapps\ROOT\WEB-INF

Yellowfinインストール時に、インストール固有の設定の多くが、web.xmlファイルに保存されます。これらの設定は、Yellowfinを正常に起動、実行するために重要です。 

JSPを含める

ファイル先頭近くの<ENTITY>行では、YellowfinパスをURLとして正確に指定しなくてはいけません。
<!ENTITY jsps SYSTEM "file:/C:/Program Files/Yellowfin/appserver/webapps/ROOT/WEB-INF/web-jsps.xml">
または、
<!ENTITY jsps SYSTEM "file:/usr/Yellowfin/appserver/webapps/ROOT/WEB-INF/web-jsps.xml">

構成データベースのパラメーター

Yellowfinが機能するために、web.xmlファイルでYellowfin構成データベースの接続パラメーターを正確に設定する必要があります。これらの設定は、「InitConnectionPool」という名前で、<servlet>項目にあります。接続パラメーターは、以下の通りです。

JDBCDriverClass

JDBCドライバークラスの名前

必須

JDBCUrl

データベースに接続するためのJDBC URL

必須

JDBCUser

接続に使用するユーザー名

必須

JDBCPassword

接続に使用するパスワード

必須

JDBCPasswordEncrypted

JDBCPassword内のパスワードが、暗号化されているかどうか(true/false)

オプション設定(デフォルトでは、「false」に設定されています)

JDBCMinCount

データベースに対して開かれる最少接続数

必須

JDBCMaxCount

データベースに対して開かれる最大接続数

必須

JDBCTimeout

閉じられるまで使用される接続の時間(秒単位)。

オプション設定(デフォルトでは、「300」に設定されています)

PSCacheSize

各接続につき、キャッシュする最大プリペアードステートメント数。こちらを0に設定すると、プリペアードステートメントのキャッシュが無効化されます。

オプション設定(デフォルトでは、「20」に設定されています)

詳細は、以下の図を参考にしてください。


全般的なYellowfin起動パラメーター

Yellowfinの様々な箇所に影響する、数多くの全般的な起動パラメーターがあります。これらの設定は、「MIStartup」という名前で、<servlet>項目にあります。パラメーターは、以下の通りです。

ReportCacheSize

レポート結果キャッシュに格納する結果セット数

オプション設定(デフォルトでは「20」に設定されています)

ReportCacheMaxAge

レポート結果キャッシュ内での結果セットの最長保持期間(ミリ秒単位)

オプション設定(デフォルトでは「24時間」に設定されています)

BIRTPath

BIRTサポートファイルへのパス

オプション設定

ScanJarFiles

起動時に、JDBCドライバーをスキャンするかどうか(true/false)

オプション設定(デフォルトでは、「true」に設定されています)

JDBCDrivers

起動時に検索されるJDBCドライバークラス名であり、コンマ区切りで表示されます。ScanJarFilesをfalseに設定した場合、利用可能なドライバーを指定するために、こちらの設定を使用します。

オプション設定

クラスタリング


クラスタリングを使用することで、同一のデータベースに対して、複数のYellowfinサーバを実行することができます。Yellowfinにクラスタの設定をするためには、webサービス情報とともに、以下の内容をweb.xmlファイルに追加しなくてはいけません。


<!-- Cluster Management -->
  <servlet>
    <servlet-name>ClusterManagement</servlet-name>  
    <servlet-class>com.hof.mi.servlet.ClusterManagement</servlet-class>  
    <init-param>
      <param-name>ServiceUser</param-name>
      <param-value>admin@yellowfin.com.au</param-value>
    </init-param>
    <init-param>
      <param-name>ServicePassword</param-name>
      <param-value>test</param-value>
    </init-param>
     <init-param>
      <param-name>ServiceAddress</param-name>
      <param-value>/services/AdministrationService</param-value>
    </init-param>
    <init-param>
      <param-name>ServicePort</param-name>
      <param-value>80</param-value>
    </init-param>
    <init-param>
      <param-name>ClusterHosts</param-name>
      <param-value>
         192.168.4.196
      </param-value>
    </init-param>
    <load-on-startup>11</load-on-startup>  
  </servlet>


クラスタリングにより、以下の項目が保証されます。

  1. ひとつのサーバ上で参照コードを変更した場合、他のすべてのサーバ上で、参照コードを再読み込みします。
  2. ビューを変更した場合、すべてのサーバのキャッシュから、古いバージョンが削除されます。
  3. 新しいライセンスがアップロードされた場合、すべてのサーバが更新されます。
    注意:ライセンスには、必要なすべてのホスト名が明示されていなければなりません。詳細については、Yellowfin担当者までお問い合わせください。


パフォーマンスチューニング


高速なCPUや、メモリの割り当てなど、ハードウェアのキャパシティを強化する以外に、様々な方法でYellowfinのパフォーマンスをチューニングすることができます。キャパシティやシステム構成設定について、より詳細な情報は、「サーバキャパシティ」の白書を参照してください。


Webサーバー接続

Tomcatウェブサーバのデフォルト設定では、最大100ユーザーを処理しますが、この最大接続数を調整することで、より多くの同時接続を可能にします。

パラメーターは、$INSTALL_DIRECTORY \appserver\webapps\ROOT\WEB-INF\web.xmlファイルで設定することができます。

ファイル内のコンテキストは、サーブレット「InitConnectionPool」に対するものです。

Yellowfinデータベース接続

Yellowfinのアプリケーションサーバは、レポートリポジトリやメタデータにアクセスするために、Yellowfinデータベースサーバへの接続を要求します。この接続は、予想される同時接続数に応じて、よりスループットを出すために、調整することができます。

データベース接続のデフォルト設定や最大接続数の変更は、$INSTALL_DIRECTORY\appserver\webapps\ROOT\WEB-INF\web.xml ファイルで行うことができます。

デフォルトの同時接続数は、「最小2」、「最大5」に設定されています。接続制限を変更することで、パフォーマンスを改善することができます。

注意:Yellowfinのパフォーマンスが課題の場合、接続パラメーターを変更することで改善することがありますが、ハードウェアが同時接続数をサポートできる構成になっているかどうかも考慮しなくてはいけません。より詳細な情報は、サーバキャパシティの白書を参照してください。

Java仮想マシン(JVM)ヒープサイズ

Yellowfinには、システム構成ファイルで設定された、メモリ制限があります。設定したメモリ制限に達した場合、サーバに空きメモリがある状態でも、アプリケーションは制限以上のメモリを割り当てることができません。Yellowfinが、更なるメモリを必要とする場合、これはエラー発生の原因になります。

Yellowfinの起動方法に応じて、JVMの最大メモリを拡張する方法は異なります。

Windowsサービス

Yellowfinサービスを最初にインストールする際に、メモリ制限はYellowfin\appserver\bin\service.batファイルを参照して設定されます。このファイルは、異なるデフォルト値を提供するために編集することができますが、これはサービスがインストールされる時のみ読み込まれます。既存のサービスのメモリ制限を編集するためには、以下の手順を実行します。

  1. コマンドプロンプトを開き、Yellowfinインストールディレクトリ配下の、appserver\binへ移動します。
  2. 次のコマンドを実行します。:tomcat8w.exe //ES//Yellowfin

    Yellowfinサービスの、サービスマネージャーが実行されます。「Java」タブに移動し、「メモリ初期使用量」と「メモリ最大使用量」の値を変更します。
  3. Yellowfinサービスを再起動して、変更内容を反映します。

Windowsスタートメニュー

Windowsスタートメニューから、Yellowfinサーバを起動している場合、メモリ制限は起動バッチファイルを参照します。

  1. Yellowfinを終了します。
  2. Yellowfin\appserver\bin\catalina.batファイルを編集します。
  3. 以下のセクションを探します。

    rem Memory limits.
    rem Use these options to set the Java memory limits.
    rem -Xms128m sets the initial Java heap size to 128Mb
    rem -Xmx512m sets the maximum Java heap size to 512Mb
    rem To set memory limits uncomment the following line:
    rem set JAVA_OPTS=%JAVA_OPTS% -Xms128m -Xmx512m
  4. 最終行の先頭にある「rem」を削除し、「Xmx」オプションを、必要な最大メモリ量に変更します。
  5. Yellowfinを再起動して、変更内容を反映します。

Linux/Unix/Mac OSX

Yellowfinを、Linux/Unix/Mac OSX上で実行している場合、メモリ制限は起動スクリプトを参照します。

  1. Yellowfinを終了します。
  2. Yellowfin/appserver/bin/catalina.shファイルを編集します。
  3. 以下のセクションを探します。

    # Memory limits.
    # Use these options to set the Java memory limits.
    # -Xms64m sets the initial Java heap size to 64Mb
    # -Xmx256m sets the maximum Java heap size to 256Mb
    #JAVA_OPTS="$JAVA_OPTS -Xms64m -Xmx256m"
    
  4. 最終行をコメントアウトし、「Xmx」オプションを、必要な最大メモリ量に変更します。
  5. Yellowfinを再起動して、変更内容を反映します。