grpc-go源码剖析九之dnsResolver解释器以及实战测试coredns

本篇文章主要是分析一下dnsResolver类型的解析器的核心原理;

并且进行实际测试;

最后分析一下,当dnsResolver解析失败时,实现重试机制的原理;

1、dnsResolver解析器原理介绍

dns解析器的原理:

其实底层调用的是

golang自带net包中的LookupHost、LookupSRV、LookupTXT三个函数来实现解析的。

通过这三个函数远程去访问dns服务器,最终将用户设置的链接地址转换成后端服务器地址列表。

直接进入grpc-go/internal/resolver/dns/dns_resolver.go中的Build方法:

1// Build creates and starts a DNS resolver that watches the name resolution of the target.
2<

你可能感兴趣的:(码二哥的技术专栏,grpc,docker,kubernetes,微服务,golang)