异步DNS解析

2013年6月26日 由 Creater 留言 »

Linux系统下面gethostbyname()是内核调用而且是同步的,就是说当多线程程序都要进行DNS解析时,同时只能有一 个线程在执行gethostbyname()代码,其他线程在函数外等待。当多线程/进程进行大量DNS解析时,如果还调用 gethostbyname()方法,显然会成为程序的一个瓶颈。所以我编写一个DNS解析程序,很简单就是基于UDP利用DNS协议发送和解析DNS 包。由于代码工作在操作系统的用户态达到了并行异步的效果。

发几个异步DNS的开源项目:

http://c-ares.haxx.se/

http://sourceforge.jp/projects/sfnet_adns/

广告位

发表评论

你必须 登陆 方可发表评论.