We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
查看应用配置的dns 缓存时间
grep -rn "networkaddress.cache" ${JAVA_HOME}/* networkaddress.cache.ttl #default -1 networkaddress.cache.negtive.ttl #default 10
设置解析成功的域名记录JVM中缓存的有效时间,这里修改为1秒钟有效,0表示禁止缓存,-1表示永远有效
-Dsun.net.inetaddr.ttl=1
设置解析失败的域名记录JVM中缓存的有效时间,这里修改为1秒钟有效,0表示禁止缓存,-1表示永远有效
-Dsun.net.inetaddr.negative.ttl=1
第一个极端就是永久不失效,那么带来的结果是对DNS更新的响应时间为无穷大,但是因为没有额外的DNS查询开销,可以使系统的吞吐量达到最大。 第二个极端就是永远失效,意味着每次都需要进行DNS查询,这样带来的结果是对DNS更新的响应时间缩短为无穷小,意味着只要DNS服务器有更新,自己的服务器也会立马感知此次更新,但是因为每次操作都需要DNS额外的查询开销,将使系统做有用功的比例减少,吞吐量将受到一定的影响。 所以就需要平衡对DNS更新的响应时间和系统的吞吐量。一般业界用秒级别作为失效时间(比如一秒或三秒)。这样在保证吞吐量的同时,也保证了对DNS更新的敏感性。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
查看应用配置的dns 缓存时间
设置解析成功的域名记录JVM中缓存的有效时间,这里修改为1秒钟有效,0表示禁止缓存,-1表示永远有效
设置解析失败的域名记录JVM中缓存的有效时间,这里修改为1秒钟有效,0表示禁止缓存,-1表示永远有效
第一个极端就是永久不失效,那么带来的结果是对DNS更新的响应时间为无穷大,但是因为没有额外的DNS查询开销,可以使系统的吞吐量达到最大。
第二个极端就是永远失效,意味着每次都需要进行DNS查询,这样带来的结果是对DNS更新的响应时间缩短为无穷小,意味着只要DNS服务器有更新,自己的服务器也会立马感知此次更新,但是因为每次操作都需要DNS额外的查询开销,将使系统做有用功的比例减少,吞吐量将受到一定的影响。
所以就需要平衡对DNS更新的响应时间和系统的吞吐量。一般业界用秒级别作为失效时间(比如一秒或三秒)。这样在保证吞吐量的同时,也保证了对DNS更新的敏感性。
The text was updated successfully, but these errors were encountered: