当前位置: 首页 > 软件库 > 程序开发 > 网络工具包 >

Tiny DNS Resolver

异步DNS解析
授权协议 BSD
开发语言 C/C++
所属分类 程序开发、 网络工具包
软件类型 开源软件
地区 不详
投 递 者 强安和
操作系统 Linux
开源组织
适用人群 未知
 软件概览

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

  • 众所周知,Unix/Linux系统下面gethostbyname()是不可重入的,就是说当多线程程序都要进行DNS解析时,必须保证同时只能有一个线程在执行gethostbyname()代码,其他线程在函数外等待。当多线程/进程进行大量DNS解析时,如果还调用gethostbyname()方法,显然会成为程序的一个瓶颈。所以我编写一个DNS解析程序,很简单就是基于UDP利用DNS协议发送和解析DNS

  • 【TINY4412】U-BOOT移植笔记:(19)TFTP更新固件 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 U-BOOT版本: 2017.03 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-7-12 21:11:04 作者

  • 【TINY4412】LINUX移植笔记:(9)USB驱动 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 LINUX内核: 4.12.0 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-7-27 21:29:22 作者: SY 简介

  • 【TINY4412】LINUX移植笔记:(4)Ramdisk文件系统 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 LINUX内核: 4.12.0 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-7-8 22:56:20 作者:

  • 前面介绍过了从SD卡启动uboot和kernel,并且在sd卡创建了两个分区,一个分区用来存放kernel,格式为FAT32。另一个分区用来存放文件系统,格式为EXT4,接下来介绍如何从sd卡启动文件系统。 首先使用一个已经做好的可以挂载的根文件,这里可以使用友善官方提供的rootfs_rtm_210.tgz文件系统。 1、解压文件系统 tar xzvf rootfs_rtm_210.tgz 2、

  • 【TINY4412】LINUX移植笔记:(16)eMMC启动Linux内核 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 LINUX内核: 4.12.0 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-8-6 12:44:43 作

  • 1.服务器版本 # uname –rmos Linux 2.6.18-308.el5 x86_64 GNU/Linux # cat /etc/redhat-release Red Hat Enterprise Linux Server release 5.8(Tikanga) 2.安装DNS服务 yum install -y bind bind-chrootcaching-nameserver 3

  • tiny210V2开发板hdmi输出到10.1寸LCD,无图像。。。 用tiny210V2开发板的HDMI接口输出到的10.1寸LCD,LCD无任何现象。 说明一下我的情况,我的10.1寸屏LCD是HDMI接口的,我用HDMI连接我的笔记本,信号一切输出正常(也就是说笔记本的HDMI输出能点亮我的10.1寸LCD屏),但我用TINY210V2来做,却行不通,LCD上什么都看不到。然后我将tiny2

  • 【TINY4412】LINUX移植笔记:(12)NFS网络文件系统 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 LINUX内核: 4.12.0 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-8-1 20:46:17 作者: S

  • 【TINY4412】LINUX移植笔记:(15)SD卡启动Linux内核 宿主机 : 虚拟机 Ubuntu 16.04 LTS / X64 目标板[底板]: Tiny4412SDK - 1506 目标板[核心板]: Tiny4412 - 1412 LINUX内核: 4.12.0 交叉编译器: gcc-arm-none-eabi-5_4-2016q3 日期: 2017-8-5 11:39:53 作者

  • 错误现象: dm9000 dm9000: read wrong id 0x2b2a2928 dm9000 dm9000: wrong id: 0x2b2a2928 dm9000 dm9000: not found (-19). TCP cubic registered NET: Registered protocol family 17 Registering the dns_resolver k

 相关资料
  • (要求Workerman版本>=3.3.6) 安装: composer require react/dns 示例: <?php require_once __DIR__ . '/vendor/autoload.php'; use WorkermanWorker; $worker = new Worker('text://0.0.0.0:6161'); $worker->onWorkerStart

  • 问题内容: 有没有一种干净的方法可以以Java异步,非阻塞的方式(例如,状态机,而不是1个查询= 1个线程)来解析DNS查询(通过主机名获取IP)-我想同时运行数万个查询,但是不能运行数万个线程)? 到目前为止,我发现了什么: 标准实现正在阻塞,并且看起来标准Java库缺少任何非阻塞实现。 批量解决DNS问题也讨论了类似的问题,但是找到的唯一解决方案是多线程方法(即,一个线程在每个给定的时间段内仅

  • DNS解析用于将简单好记的域名解析为计算机用于通信的IP地址,便于用户通过域名访问到指定的网址或服务器等。 DNS解析用于将简单好记的域名解析为计算机用于通信的IP地址,便于用户通过域名访问到指定的网址或服务器等。目前仅支持阿里云、腾讯云和AWS,且腾讯云只支持PublicZone类型的DNS。 PublicZone DNS:即公共DNS解析服务,用户可以通过Internet之前访问域名。 Pri

  • 好吧,所以我完全被这个DNS配置卡住了。以下是配料: null 我显然搞错了。有人能看出我哪里出了问题吗?

  • 请原谅一个非常初级的问题。 我很难理解nginx'解析器'参数及其工作原理。我已经阅读了留档,搜索了教程和帖子(使用解析器、nginx和dns等关键字),但我仍然不确定如何应用解析器。 http://nginx.org/en/docs/http/ngx_http_core_module.html#resolver "配置用于将上游服务器的名称解析为地址的名称服务器......" 根据这个定义,它似

  • 运行此代码时会出现异常。我想解析url,它是一个json对象数组: 这是我的日志: 更新的logcat: 完整logcat:05-13 22:15:01.438:I/dalvikvm(968):threadid=3:对信号3作出反应05-13 22:15:01.598:I/dalvikvm(968):将堆栈跟踪写入“/数据/anr/跟踪。txt’05-13 22:15:01.718:D/grall

  • 本文向大家介绍ajax异步请求详解,包括了ajax异步请求详解的使用技巧和注意事项,需要的朋友参考一下 做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事。既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.com学习,教程完善,适合初学者快速入门。 jQuery的引用,可以通过下载js文件导入,或通过外

  • 本文向大家介绍理解javascript异步编程,包括了理解javascript异步编程的使用技巧和注意事项,需要的朋友参考一下 一、异步机制 JavaScript的执行环境是单线程的,单线程的好处是执行环境简单,不用去考虑诸如资源同步,死锁等多线程阻塞式编程等所需要面对的恼人的问题。但带来的坏处是当一个任务执行时间较长时,后面的任务会等待很长时间。在浏览器端就会出现浏览器假死,鼠标无法响应等情况。