Desativar o armazenamento em cache DNS no Java Virtual Machine - Amazon Neptune

Desativar o armazenamento em cache DNS no Java Virtual Machine

Em um ambiente no qual você deseja fazer o balanceamento de carga das solicitações em várias réplicas de leitura, você precisa desativar o armazenamento em cache DNS no Java Virtual Machine (JVM) e fornecer o endpoint de leitura do Netuno ao criar o cluster. Desabilitar o cache DNS do JVM garante que o DNS seja resolvido novamente para cada nova conexão, de maneira que as solicitações sejam distribuídas em todas as réplicas de leitura. É possível fazer isso no código de inicialização da aplicação com a seguinte linha:

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

No entanto, uma solução mais completa e sólida para balanceamento de carga é fornecida pelo código do cliente Java do Amazon Gremlin no GitHub. O cliente Java do Amazon Gremlin está ciente da topologia do cluster e distribui de forma justa as conexões e solicitações em um conjunto de instâncias no cluster do Neptune. Consulte esta postagem no blog para ver um exemplo da função do Lambda em Java que usa esse cliente.