summaryrefslogtreecommitdiff
path: root/docs/src/guide/admin/cache.md
blob: 9e45ff2b2a8b6e03c69d3020e6e43d2261881771 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# キャッシュシステム

LunaticChat では,かな・ローマ字変換時のフレーズを自動でメモリ・ディスクにキャッシュするシステムが搭載されています.

かな・ローマ字変換に関する情報は [こちら](../player/japanese-romanization.md) をご覧ください.

## メモリキャッシュ

LunaticChat は変換済みのフレーズをメモリ上にキャッシュし,再度同じフレーズが要求された際に高速に応答できるようにしています.

このキャッシュは一時的であり,サーバー再起動時や設定した秒数毎にディスクキャッシュへ保存されます.

## ディスクキャッシュ

LunaticChat はメモリキャッシュの内容を定期的にディスクに保存します. これにより,サーバー再起動後もキャッシュ内容を保持できるようになっています.

ディスクキャッシュとして使用されるファイルは [設定で変更できます](configuration.md#cachefilepath).

## キャッシュの解放

メモリキャッシュは,ディスクにキャッシュしたのち自動的に JVM のガベージコレクションにより解放されます.

ディスクキャッシュは,手動でファイルを削除することで解放できます. 再起動時に LunaticChat は再度キャッシュファイルを作成します.

::: warning パージ機能について

LunaticChat では,キャッシュのパージ 機能は実装されていません.

これはプレイヤー側にホストのファイルシステムを操作させることがセキュリティ上好ましくないためです.

:::

## キャッシュバージョン

ディスクキャッシュに使用されるファイルには `version` フィールドが含まれており,LunaticChat のバージョンアップに伴うキャッシュフォーマットの変更に対応しています.

バージョンが不一致の場合,LunaticChat はキャッシュファイルを **古い形式のキャッシュ** として認識し,内容を無視して新しい形式で再作成します.

```json
{"version":"1","entries":{}}
```