AWS SDK for Java 1.x は 2024 年 7 月 31 日にメンテナンスモードに移行し、2025 年 12 月 31 end-of-support
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
DNS 名前ルックアップJVMTTLの を設定する
Java 仮想マシン (JVM) はDNS名前ルックアップをキャッシュします。がホスト名を IP アドレスにJVM解決すると、 time-to-live () と呼ばれる指定された期間、IP アドレスがキャッシュされますTTL。
AWS リソースは、時折変更されるDNS名前エントリを使用するため、 を 5 秒TTLの値JVMで設定することをお勧めします。これにより、リソースの IP アドレスが変更されると、アプリケーションは を再クエリすることで、リソースの新しい IP アドレスを受信して使用できますDNS。
一部の Java 設定では、 JVMが再起動されるまでDNSエントリが更新されないようにJVMデフォルトTTLが設定されます。したがって、アプリケーションの実行中に AWS リソースの IP アドレスが変更された場合、 を手動で再起動JVMし、キャッシュされた IP 情報が更新されるまで、そのリソースを使用することはできません。この場合、キャッシュされた IP 情報を定期的に更新TTLするように JVMを設定することが重要です。
の設定方法 JVM TTL
JVMの を変更するにはTTL、networkaddress.cache.ttl$JAVA_HOME/jre/lib/security/java.security
ファイルまたは Java 11 以降の $JAVA_HOME/conf/security/java.security
ファイルに networkaddress.cache.ttl
プロパティを設定します。
以下は、TTLキャッシュセットが 5 秒に設定されているjava.security
ファイルからのスニペットです。
# # This is the "master security properties file". # # An alternate java.security properties file may be specified ... # The Java-level namelookup cache policy for successful lookups: # # any negative value: caching forever # any positive value: the number of seconds to cache an address for # zero: do not cache ...
networkaddress.cache.ttl=5
...
環境変数でJVM表される で実行されるすべてのアプリケーションは$JAVA_HOME
、この設定を使用します。