dns

       dns 服务是针对域名解析成IP的域名系统,作用为了隐藏IP。现网上主要采用mysql+bind来做域名与IP的映射关系。

一:

1。dns配置

    window:网络共享中心---对应的网络--属性---tcp/ipv4  测试:ping 域名地址有无解析为IP

    linux:    /etc/resloved.conf   添加nameserver  测试:dig  nslookup 命令

2。如何设置dns缓存时间(可以做客户端压测考虑因素):

window操作方法:

    (1). 启动注册表编辑器 (Regedit.exe)。

    ( 2). 在注册表中找到并单击以下项: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters

    (3). 在“编辑”菜单上,指向“新建”,单击“DWORD 值”,然后添加下列注册表值:

    数值名称:MaxCacheTtl  (注意肯定条目和否定条目的区别)
   数据类型: REG_DWORD
    默认值:86400 秒
数值数据:如果您将客户端的 DNS 缓存中的最大 TTL 值降低为 1 秒,则客户端 DNS 缓存看起来已被禁用。

  linux配置:  注意全局和对应的容器修改区别

 (1).全局修改jvm ttl事件 ,但不能使用容器类里面的缓存时间生效(有待验证)

( 2).容器修改缓存时间。

 以:以websphere为例

第一个方式:

选择服务器-> 应用程序服务器-> Server1-> 进程定义->Java 虚拟机。

滚动到通用 JVM 参数,添加:

-Dnetworkaddress.cache.ttl=60 -Dsun.net.inetaddr.ttl=60

单击确定以保存更改

第二个方式:

修改XML文件

IBM\WebSphere\AppServer\profiles\AppSrv01\config\cells\liangwgNode01Cell\nodes\liangwgNode01\servers\server.xml

在文件末尾,在属性“disableJIT="false"”之前的位置,

添加:genericJvmArguments="-Dnetworkaddress.cache.ttl=60 -Dsun.net.inetaddr.ttl=60" 


二:dns出现unknowhost异常

排除了丢包,服务器本身的性能来说,如果dns服务器出现cpu 消耗不大,内存消耗也不大,可考虑查看域名反析

三:客户端优化

       1、在Linux主机上的nsswitch.conf的配置文件中,将域名解析的顺序确定成dns,files,就是如果从dns解析出,会从本地的files(hosts)进行获取,并在本机上添加相应hosts配置,这样做一个本地的容错方案。

       2、对于resolv.conf中配置的nameserver,建议去掉无用。

       3、将客户端的JVM的ttl的dns缓存参数调整为5分钟,即300秒,减少去dns访问的频率。

       4、修改DNS的服务器端的缓存时间,减少读取数据库的频率。



转载于:https://my.oschina.net/u/2601738/blog/595284

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值