3
0

More than 3 years have passed since last update.

Play Slick の application.conf での設定一覧

Posted at

Play Slick の設定したいけど、どこ見ればいいか分からなすぎ問題。

Play公式を良く読んでみると

for the complete list of configuration parameters that you can use to configure a database see the Slick ScalaDoc for Database.forConfig

と書かれている。forConfigを展開したところにある設定項目が、play slick での設定項目らしい。

一覧

※ 設定して試したわけではないので注意
※ 内容について、筆者のDBへの理解が浅く、直訳になってる箇所が多めなので注意。細かく確認したい場合は参考記載のリンクから公式たどってください。

プロパティ required 内容
numThreads Int optional, default: 20 DBアクションの非同期実行のための、スレッドプール内の同時スレッド数。より詳細な情報は HikariCP wikiを参照。Slickでの非同期実行は、最大接続プールサイズではなく、スレッドぷプールサイズ(これ)を適宜調整する必要があることに注意
queueSize Int optional, default: 1000 全てのスレッドがビジー状態の時に、DBアクションを入れておくキューのサイズ。
url String required JDBC URL
driver String optional ロードするJDBCドライバのクラス
user String optional 接続するDBのユーザー名
password String optional 接続するDBのパスワード
isolation String optional トランザクション分離レベル。許可されている値:NONE, READ_COMMITTED, READ_UNCOMMITTED, REPEATABLE_READ, SERIALIZABLE
catalog String optional デフォルトカタログ
readOnly Boolean optional read only フラグ
properties Map optional ドライバーまたはデータソースに渡すプロパティ
dataSourceClass String optional JDBCドライバによって提供されるDataSourceクラスの名前。このキーが設定されている場合、urlは無視される(データベース接続を構成するには properties を利用する必要がある)
maxConnections Int optional, default: numThreads * 5 コネクションプールの最大接続数
minConnections Int optional, default: numThreads と同じ数 コネクションプールに保持する接続の最小数
connectionTimeout Duration optional, default: 1s コネクションタイムアウトまでの時間。タイムアウトした場合は SQLExceptionがスローされる。
validationTimeout Duration optional, default: 1s 接続活性テストがタイムアウトするまでの最大時間。1000msが最小値
idleTimeout Duration optional, default: 10min コネクションプール内でコネクションがアイドル状態を維持できる最大時間。0に設定すると、アイドル状態のコネクションはコネクションプールから削除されなくなる
maxLifetime Duration optional, default: 30min コネクションプール内のコネクションの最大生存時間。
connectionInitSql String optional 新しい接続が作成されるたびに、プールに追加する前に実行されるSQLステートメント
initializationFailFast Boolean optinal, default: false プールが初期接続で正常にシードできなかった場合に、プールが「fail fast」するかどうかを制御する。プールの起動時に接続を作成できなかった場合、RuntimeException がスローされる。minConnections が 0 の場合、このプロパティは影響を受けない。
leakDetectionThreshold Duration optional, default: 0 接続漏れの可能性があることを示すメッセージがログに記録されるまでに、プールから接続が抜ける時間を指定する。値が 0 の場合、リーク検出は無効になる。リーク検出を有効にするための最低許容値は 10 秒。
connectionTestQuery String optional, default: 0 データベースへの接続がまだ生きていることを確認するために、プールから接続を取得する直前に実行されるステートメント。設定されていない場合は、代わりにJDBC4 Connection.isValid()メソッドが使用されます(通常はこれが望ましい)。
registerMbeans Boolean optional, default: false JMX管理Bean(「MBean」)が登録されているかどうか。

参考

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0