nscd 域名解析加速测试

测试环境:

pythoin socket.getaddinfo 方法测试nscd加缓存,不加缓存用时对比;

nscd启动时:

[root@localhost domain]# python test_domaim.py
0.1627202034

nscd日志

Mon 10 Jul 2017 12:48:34 PM CST - 32157: add new entry "api.mch.weixin.qq.com" of type GETAI for hosts to cache (first)
Mon 10 Jul 2017 12:48:49 PM CST - 32157: considering GETAI entry "api.mch.weixin.qq.com", timeout 1499662117
Mon 10 Jul 2017 12:48:49 PM CST - 32157: Reloading "api.mch.weixin.qq.com" in hosts cache!

nscd关闭时:

[root@localhost domain]# python test_domaim.py
4.27283501625

生产环境:

nscd不起动的时候:

[root@YJ-20-6 ~]# python test_domain.py
0.842427015305

nscd启动:

[root@YJ-20-6 ~]# python test_domain.py
0.050500869751

============================================

http://beej.us/guide/bgnet/output/html/multipage/gethostbynameman.html

发现问题:对于高并发 网络IO操作,所使用语言 底层调用 glibc库的gethostbyname() 此方法已经官方弃用,需要改由getaddrinfo();

前者多线程并发属于阻塞性,在解析出现问题时候会导致所有线程出现问题;

 实际测试中前者经常出现无法解析域名想象;后者则正常;


测试代码:
#/usr/bin/python 

import socket
import sys

#host = 'api.mch.weixin.qq.com'

def test_domain():
    host = 'api.mch.weixin.qq.com'
    for i in range(1000):
        n = 0
        try:
            #remote_ip = socket.gethostbyname(host)
            remote_ip = socket.getaddrinfo(host,'80')
        except socket.gaierror:
            print 'err hostname resolve'
            n += 1
        #else:
         #   print remote_ip
    return n
if name=='main':
    from timeit import Timer
    t1=Timer("test_domain()","from main import test_domain")
    print t1.timeit(10)

Pingbacks已打开。

引用地址

评论
  1. JaneGal JaneGal 发布于 2020年10月28日 14:00 #

    <a href="https://vardenafil360.com/">order cheap levitra</a>

  2. mortgage memes mortgage memes 发布于 2020年10月28日 14:09 #

    <a href="http://homeloansmart.com/">mortgages in canada</a> <a href="http://lifeinsurancelux.com/">whole life insurance rates by age</a> <a href="http://sexchatwww.com/">isexychat</a> <a href="http://sexcamzoom.com/">adult free cams</a>

  3. mortgage payment mortgage payment 发布于 2020年10月28日 18:13 #

    <a href="http://imortgagehomeloans.com/">mortgage refinance</a> <a href="http://mortgageanr.com/">new mexico mortgage</a> <a href="http://lifeinsurancetim.com/">protective life insurance</a>

  4. JoeGal JoeGal 发布于 2020年10月28日 19:13 #

    <a href="https://viagraneo.com/">otc viagra online</a> <a href="https://viagrafis.com/">viagra cheap</a> <a href="https://cialisfive.com/">tadalafil 5mg online canada</a> <a href="https://motrinpill.com/">motrin 400 mg gel</a> <a href="https://levitract.com/">levitra discount coupon</a> <a href="https://365medtb.com/">dostinex prescription</a> <a href="https://viagragenericbrand.com/">viagra online without prescription usa</a> <a href="https://medstoo.com/">biaxin price canada</a>

  5. KiaGal KiaGal 发布于 2020年10月28日 20:03 #

    <a href="http://viagrafis.com/">viagra without a rx</a>

发表评论