gpt4 book ai didi

java - 在 Elastic Beanstalk 中设置 networkaddress.cache.ttl 的推荐方法是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:20:48 25 4
gpt4 key购买 nike

我需要为在 Tomcat 8 中运行的 Amazon Elastic Beanstalk 应用程序设置 Java 的 DNS 缓存 TTL (networkaddress.cache.ttl)。因为 EB 可以随时启动和停止服务器实例,所以我不能简单地编辑 Tomcat 配置文件和服务器,并期望更改持续存在。

我尝试设置 networkaddress.cache.ttl 和 sun.net.inetaddr.ttl 环境变量,但没有任何效果。 Amazon 表示调用 java.security.Security.setProperty("networkaddress.cache.ttl", "60"); “如果您在 Tomcat 中运行您的应用程序将不起作用”(http://aws.amazon.com/articles/4035)。设置 TTL 有什么好的方法?

最佳答案

问题是我做错了。设置 sun.net.inetaddr.ttl 环境变量有效。您可以在 Elastic Beakstalk 配置文件中执行此操作:

option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: sun.net.inetaddr.ttl
value: 60

60 秒是值 recommended by Amazon

另一个对我来说更好的选择是创建和使用 java.security 文件:

option_settings:
- namespace: aws:elasticbeanstalk:application:environment
option_name: java.security.properties
value: /etc/myapp/java.security
container_commands:
00create_config_dir:
command: 'mkdir -p /etc/myapp'
ignoreErrors: true
01create_java_security_file:
command: 'echo "networkaddress.cache.ttl=60" > /etc/myapp/java.security'
ignoreErrors: true

关于java - 在 Elastic Beanstalk 中设置 networkaddress.cache.ttl 的推荐方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29579589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com