Mengatur JVM TTL untuk pencarian nama DNS - AWS SDK for Java 2.x

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengatur JVM TTL untuk pencarian nama DNS

Mesin virtual Java (JVM) menyimpan cache pencarian nama DNS. Ketika JVM menyelesaikan nama host ke alamat IP, itu menyimpan alamat IP untuk jangka waktu tertentu, yang dikenal sebagai (TTL). time-to-live

Karena AWS sumber daya menggunakan entri nama DNS yang terkadang berubah, kami sarankan Anda mengonfigurasi JVM Anda dengan nilai TTL tidak lebih dari 60 detik. Ini memastikan bahwa ketika alamat IP sumber daya berubah, aplikasi Anda akan dapat menerima dan menggunakan alamat IP baru sumber daya dengan meminta DNS.

Pada beberapa konfigurasi Java, TTL default JVM diatur sehingga tidak akan pernah menyegarkan entri DNS sampai JVM dimulai ulang. Jadi, jika alamat IP untuk AWS sumber daya berubah saat aplikasi Anda masih berjalan, itu tidak akan dapat menggunakan sumber daya itu sampai Anda secara manual me-restart JVM dan informasi IP cache di-refresh. Dalam hal ini, sangat penting untuk mengatur TTL JVM sehingga secara berkala akan menyegarkan informasi IP cache.

catatan

TTL default dapat bervariasi sesuai dengan versi JVM Anda dan apakah manajer keamanan diinstal. Banyak JVM menyediakan TTL bawaan yang kurang dari 60 detik. Jika Anda menggunakan JVM seperti itu dan tidak menggunakan manajer keamanan, Anda dapat mengabaikan sisa topik ini.

Cara mengatur JVM TTL

Untuk memodifikasi TTL JVM, atur nilai properti networkaddress.cache.ttl. Gunakan salah satu metode berikut, sesuai dengan kebutuhan Anda:

  • Secara global, untuk semua aplikasi yang menggunakan JVM. Set networkaddress.cache.ttl dalam $JAVA_HOME/jre/lib/security/java.security file:

    networkaddress.cache.ttl=60
  • hanya untuk aplikasi Anda, atur networkaddress.cache.ttl dalam kode inisialisasi aplikasi Anda:

    java.security.Security.setProperty("networkaddress.cache.ttl" , "60");