コンテンツにスキップ

バックグラウンドサービスを複数インスタンス構成に対応させる

概要

プリザンターのバックグラウンドサービスを複数インスタンス構成に対応させる機能です。

たとえば、ロードバランサとデータベースとの間に、プリザンターが稼働する2台のサーバ(複数インスタンス)を設置する構成を考えます。各インスタンスでリマインダー機能を有効化すると、次のような事象が発生します。

通常設定の場合

通常設定の構成図。2台のインスタンスそれぞれでリマインダーが実行される

各インスタンスでリマインダーが実行され、不要なメール送信が実行されてしまいます。

各インスタンスでバックグラウンドサービスを複数インスタンス構成に対応させた場合

複数インスタンス構成に対応させた構成図。1台でのみリマインダーが実行される

1つのインスタンスでのみリマインダーが実行され、不要なメール送信は実行されません。

複数インスタンス構成に対応するバックグラウンドサービス

複数インスタンス構成に対応するバックグラウンドサービスは、以下の通りです。

  1. 本設定により、複数インスタンス環境下の1台のサーバのみで実行されるサービス

    サービス名 パラメータファイル パラメータ名
    バックグラウンドサーバスクリプト Script.json BackgroundServerScript
    リマインダー BackgroundService.json Reminder
    LDAP同期 BackgroundService.json SyncByLdap
    システムログ削除 BackgroundService.json DeleteSysLogs
    ごみ箱内レコード削除 BackgroundService.json DeleteTrashBox
    ごみ箱の内レコードに関連する未使用の権限やリンク情報を削除 BackgroundService.json DeleteUnusedRecord
    MCPログ削除 BackgroundService.json DeleteMcpLogs
  2. 本設定完了後も、複数インスタンス環境下の全サーバで実行されるサービス

    サービス名 パラメータファイル パラメータ名
    テンポラリファイル削除 BackgroundService.json DeleteTemporaryFiles

注意事項

  1. 複数インスタンス構成での運用にあたっては、安定した動作を確保するため、セッション維持機能を有効にした構成(セッションアフィニティ / スティッキーセッション )を推奨します。
  2. ロードバランサ(LB)のバックエンドにプリザンターを導入したサーバが複数台ある環境を想定した説明です。

前提条件

  1. 開発環境など、TLSサーバ証明書が設定されていないSQL Serverをデータベースとして使用する場合、SaConnectionStringなどの接続情報にTrustServerCertificate=True;を追加してください。
    【例】Implem.Pleasanter_Rds_SQLServer_SaConnectionStringの場合
    Server=(local);Database=master;UID=sa;PWD=<設定したパスワード>;Connection Timeout=30;TrustServerCertificate=True;
    
  2. 複数インスタンス構成での運用にあたっては、添付ファイルのアップロード・登録に関する設定も実施してください。

設定方法

以下の手順を実行することで、プリザンターのバックグラウンドサービスを複数インスタンス構成に対応させます。なお、本手順の実行後には、「QRTZ_」で始まるテーブルが11個作成されます。

パラメータの設定は、複数インスタンス構成下の全てAPサーバで実施してください。

  1. 設定ファイルQuartz.jsonのパラメータ「Enabled」の値をtrueに設定してください。
    "Clustering": {
            "Enabled": true,
          : (途中省略)
    }
    
  2. CodeDefinerを実行してください。

対応バージョン

対応バージョン 説明
バージョン1.4.22.0 機能追加

関連情報