CO-CONV サポート

文章番号17-015

CO-Booter におけるオフライン DB キャッシュの更新間隔設定について

公開
2017年07月25日
対象製品
  • CO-Store 3.0

概要

CO-Store 3.0 から CO-Booter でオフライン DB 機能が利用できるようになりましたが、そのオフライン DB におけるキャッシュの更新間隔の設定方法と注意事項を紹介します。

詳細

CO-Booter のオフライン DB 機能を有効にすると、データベース接続が失われた時に、CO-Booter サーバー がキャッシュしておいたデータベース情報を使用することができます。 データベース情報のキャッシュは一定間隔で更新する仕組みであるため、データベース接続が失われたタイミングによっては、古い情報に基づいて CO-Booter サーバーが動作することになる点にご注意ください。 このキャッシュの更新間隔は分単位で設定可能 (既定では 10 分) です。

データベースのキャッシュには

  • 端末へのディスク割り当て情報
  • 起動メニュー表示時の割り当て画像・表示順

などが含まれます。また、このオフライン DB のキャッシュは各サーバーがそれぞれ保持・更新します。そのため、更新間隔を短くする利点としては

  • 計画的に SQL サーバーを停止する場合、ディスクの更新や割り当て操作を最後に行ってから SQL サーバーを停止するまでの待ち時間が短くなる
  • 複数の CO-Booter サーバーで運用している環境で意図せず SQL サーバーが停止、あるいは利用できなくなった場合にサーバー間で保持するキャッシュに差異が生じにくくなる
  • 意図せず SQL サーバーが停止、あるいは利用できなくなった場合に古いディスク割り当てが利用されるようなことが起きにくくなる
    ※ 特に割り当てられたディスクが存在しない場合には端末の起動に失敗します

が挙げられます。一方、

  • 利用する全てのテーブルのスナップショットを定期的に取得するため、 SQL サーバーの負荷が大きくなる可能性がある

という点に注意する必要があります。設定を変更する場合は、キャッシュ更新時の CPU 負荷が SQL サーバや他のサービスに影響ないことをタスクマネージャー等で確認しつつ設定してください。

以下、データベース情報のキャッシュの更新間隔の設定手順を解説します。

設定を変更するには、CO-Booter サーバーを導入している端末の C:\Program Files\CO-CONV\CO-Store\Booter\CO-BooterServer.exe.config 内 20 行目付近

<!-- SQL サーバーに接続できない場合にキャッシュを用いて処理を継続するか(利用する場合 1) -->
<add key="OfflineDatabaseEnabled" value="0"/>

<!--オフライン DB 機能利用時のキャッシュのTTL(分)。 -->
<add key="OfflineDbTtl" value="10"/>

<!-- PVS ストリームサーバーの利用する IP アドレス・ポート
     例: 192.168.42.100:6910 -->
<add key="PvsServer" value=""/>

における <add key="OfflineDbTtl" value="10"/>10 を編集した後に CO-Booter サーバー サービスを再起動する必要があります。SQL サーバーの負荷に問題がないようでしたら最小である 1 とすることを推奨します。

補足

SQL サーバーの停止を伴う作業を計画する場合には、最後に割り付けの変更を伴う作業をしてからキャッシュの更新間隔以上の時間をおいた上で SQL サーバーの停止をするようにしてください。