ablog

不器用で落着きのない技術者のメモ

Aurora PostgreSQL互換でフェイルオーバーを高速化する

  • LinuxTCP Keep Alive パラメータ
tcp_keepalive_time = 1
tcp_keepalive_intvl = 1
tcp_keepalive_probes = 5
// Sets internal TTL to match the Aurora RO Endpoint TTL
java.security.Security.setProperty("networkaddress.cache.ttl" , "1");
// If the lookup fails, default to something like small to retry
java.security.Security.setProperty("networkaddress.cache.negative.ttl" , "3");
  • JDBC Driver
    • connectTimeout: ソケットがデータベースに接続を確立するまでの時間
    • loginTimeout: ソケット接続が確立された後、データベースにログインするまでの時間
    • socketTimeout: ソケットが読み取り操作で待機する時間
    • tcpKeepAlive: 設定した TCP キープアライブパラメータが優先される