intra-mart Accel Platform セットアップガイド 第46版 2024-04-01

4.3.3. Resinの設定

4.3.3.1. スタンドアローン/分散構成共通

  1. <%RESIN_HOME%/conf/resin.properties> ファイルを開きます。

  2. 「jvm_args」プロパティに、インストール環境に応じたメモリ値、ヒープの最大サイズを設定します。
    本書では、例として次の値を設定します。
    # Arg passed directly to the JVM
    jvm_args  : -Xmx2048m -Dfile.encoding=UTF-8 --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/sun.util.locale=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.jaxp=ALL-UNNAMED --add-opens=java.base/sun.util.calendar=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.jaxp.datatype=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-opens=java.base/java.math=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
    

    注意

    設定する値は「2048m」以上にしてください。
    「2048m」より小さい値を設定した場合、正常に動作しない恐れがあります。

    注意

    Java 8、または Java 11 を利用する場合は以下のコメントアウトを外して利用してください。
    (メモリ値、ヒープの最大サイズはインストール環境に応じた値に読み替えてください。)
    # When using Java 8 or 11
    # jvm_args : -Dfile.encoding=UTF-8 -Djava.io.tmpdir=tmp -Xmx4096m -Xms4096m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=30 -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError
    
    その際、以下はコメントアウトしてください。
    jvm_args : -Dfile.encoding=UTF-8 -Djava.io.tmpdir=tmp -Xmx4096m -Xms4096m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:InitiatingHeapOccupancyPercent=30 -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/sun.util.locale=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.jaxp=ALL-UNNAMED --add-opens=java.base/sun.util.calendar=ALL-UNNAMED --add-opens=java.xml/com.sun.org.apache.xerces.internal.jaxp.datatype=ALL-UNNAMED --add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED --add-opens=java.base/java.math=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
    

コラム

「jvm_args」プロパティに「-Djava.io.tmpdir」オプションを追加し、 Resin が利用する作業ディレクトリを変更できます。
このオプションが指定されていない場合、 Resin が利用する作業ディレクトリはJVMのデフォルトの設定が利用されます。
以下の例では、作業ディレクトリを /var/resin-tmp に変更する場合の設定例です。
# Arg passed directly to the JVM
jvm_args  : -Xmx2048m -Dfile.encoding=UTF-8 -Djava.io.tmpdir=/var/resin-tmp

注意

・「-Djava.io.tmpdir」オプションにより指定されたディレクトリは事前に作成しておく必要があります。
・Resin 実行ユーザが読み込み、書き込みを行うことができる権限を設定しておく必要があります。
・Linux系の環境では、このオプションが未指定の場合 /tmp が利用されます。
 cron等の設定により定期的に/tmp配下の内容が削除される設定が標準で組み込まれている場合があります。
・Resin では、作業用ディレクトリに展開した設定ファイル等の変更を検出した場合、自動的に再起動が行われる場合があります。
 その為、 Resin が利用する作業ディレクトリを変更しておくことを推奨します。

コラム

「jvm_args」プロパティに「-Duser.timezone」オプションを追加し、タイムゾーンを変更できます。
タイムゾーンは、タイムゾーンマスタに存在するものを設定してください。
タイムゾーンマスタについては「設定ファイルリファレンス - タイムゾーンマスタ」を参照してください。
本書では、例としてタイムゾーンを”UTC”として設定します。
# Arg passed directly to the JVM
jvm_args  : -Xmx2048m -Dfile.encoding=UTF-8 -Duser.timezone=UTC

注意

タイムゾーン設定の初期設定は、インストールを行った JDK に依存します。

注意

この設定は運用開始前に行ってください。
運用開始後に変更した場合、データベースに登録される日時データに影響があります。
データベースへ登録する日時データは、インストールを行った JDK のタイムゾーンに依存します。
変更前と変更後のタイムゾーンが相違する場合、タイムゾーン変換によって異なる日時データが登録されてしまいます。

コラム

Resin は、起動後に設定ファイルやプログラムの変更を検出した場合、 Resin 自身の再起動を行います。
開発中、運用中等により用途は異なりますが、Resin に変更の検出を行わせたくない場合は、「dependency_check_interval」項目の設定を行います。
下記は、変更の検出を行わせない設定例です。
     dependency_check_interval : -1

「dependency_check_interval」は、2s (2秒毎), 5m (5分毎)等の値が設定可能です。

変更が完了したら、Resin を再起動してください。

コラム

Resin の起動時にポートが重複している旨のエラーが発生する場合、Resin の停止後、ポート番号の設定を変更してください。

   java.lang.RuntimeException: java.net.BindException: Address already in use: JVM_Bind
              Can't bind to *:8080.
              Check for another server listening to that port.

「app.http」プロパティに設定されている「8080」を、「8081」などの使用されていないポート番号に変更してください。
# Set HTTP and HTTPS ports.
# Use overrides for individual server control, for example: app-0.http : 8081
app.http          : 8081

変更が完了したら、Resin を再起動してください。

注意

intra-mart Accel Platform ではHTTPSによるResinへの接続をサポートしていません。*.https プロパティを有効にしないでください。
セキュアな通信を行う場合は、Web Server を介してResinへ接続を行ってください。

コラム

その他の設定については、「設定ファイルリファレンス 」 - 「Resin 」を参照してください。

コラム

カスタマーサクセスライセンスをご契約中の場合には、ライセンスポータルと通信してご契約内容の変更が自動反映されます。
Resin をインストールした環境からライセンスポータルへの通信にプロキシサーバを利用する場合は、次の JVM 引数の設定が必要です。
-Dhttps.proxyHost プロキシサーバのホストURL
-Dhttps.proxyPort プロキシサーバのポート番号
-Dhttps.proxyUser プロキシサーバへの接続ユーザ
-Dhttps.proxyPassword 接続ユーザのパスワード

カスタマーサクセスライセンスについての詳細は、「ライセンスの登録」を参照してください。

4.3.3.2. 分散構成

  1. <%RESIN_HOME%/conf/resin.properties> ファイルを開きます。

  2. 「app_servers」プロパティに分散構成として構築したResinサーバの情報を設定します。

    例としてResinを3台構成で運用する場合、次の値を設定します。
    # app-tier Triad servers: app-0 app-1 app-2
    app_servers      : 192.168.100.1:6800 192.168.100.2:6800 192.168.100.3:6800
    
    「app_servers」プロパティに設定した「IPアドレス:ポート番号」は、記述した順に app-0, app-1, app-2 とIDが振られます。

コラム

  • 「app_servers」プロパティにはホスト名を指定することも可能です。
  • ホスト名に紐づくIPアドレスが変わった場合は Resin サーバを再起動してください。
# app-tier Triad servers: app-0 app-1 app-2
app_servers      : app0-host:6800 app1-host:6800 app2-host:6800

注意

分散構成に含まれるResinの<%RESIN_HOME%/conf/resin.properties>ファイルは、すべて同じ内容にしてください。
「app_servers」プロパティに指定するIPアドレスは、ローカルアドレスのみ指定が可能であり、グローバルアドレスの指定を行うことはできません。
また、分散環境を構築する場合、127.0.0.1等のループバックアドレスが指定された場合正常に動作しません。

4.3.3.3. TERASOLUNA Server Framework for Java (5.x) for Accel Platform を使用する場合の設定

  • Resin 4.0.49 以降の場合

    1. <%RESIN_HOME%/lib>から以下のjarファイルを退避します。
      • validation-api-1.0.0.GA.jar
    2. <%RESIN_HOME%/webapp-jars>から以下のjarファイルを退避します。
      • hibernate-validator-4.3.0.Final.jar
  • Resin 4.0.48 以前の場合

    1. <%RESIN_HOME%/lib>から以下のjarファイルを退避します。
      • hibernate-validator-4.3.0.Final.jar
      • validation-api-1.0.0.GA.jar

    コラム

    TERASOLUNA Server Framework for Java (5.x)では、Hibernate ValidatorのバージョンがResinが提供するものと異なるため、競合するバージョンのjarを退避します。

    注意

    モジュール構成の変更などにより、TERASOLUNA Server Framework for Java (5.x) for Accel Platform の利用をやめる場合には、必ず退避していたjarファイルを元に戻してください。
    • Resin 4.0.49 以降の場合
      1. <%RESIN_HOME%/lib>に以下のjarファイルを配置します。
        • validation-api-1.0.0.GA.jar
      2. <%RESIN_HOME%/webapp-jars>に以下のjarファイルを配置します。
        • hibernate-validator-4.3.0.Final.jar
    • Resin 4.0.48 以前の場合
      1. <%RESIN_HOME%/lib>に以下のjarファイルを配置します。
        • hibernate-validator-4.3.0.Final.jar
        • validation-api-1.0.0.GA.jar