V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
alect
V2EX  ›  Ubuntu

一个奇怪的问题, curl 偶尔超时,然而却找不出来原因

  •  
  •   alect · 2023-04-13 09:09:50 +08:00 · 2134 次点击
    这是一个创建于 593 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有一台服务器,使用 Ubuntu 20.04 系统,上面装着 wordpress ,安装插件的时候偶然会提示 curl 错误, 无法连接 https://downloads.wordpress.org/ , 然而并不是所有时段都出错,多数时间是可以的,极少数时间出错。 然后写了个脚本用来测试 curl 这个域名的错误,脚本我贴这里了 https://pastebin.com/QC2UPqgb 脚本的意图就是每隔两秒获取一次链接里面的内容, 如果不能获取到特定关键字则判断为失败并记录日志, 经过多次在不同的时间段测试脚本,发现 1000 次会出现大约 50-70 次左右的错误, 我本来以为是网络不太好,同时用 mtr 测试,结果是零丢包,去测试 cloudflare 官网也无错误发生。

    最离谱的是,我进入救援系统后,用这个脚本测试完全没有错误, 所以错误导致发生的原因可能就是服务器本身的 Ubuntu 有问题, 可是完全没有其他头绪了,请教各位可能是什么原因。

    第 1 条附言  ·  2023-04-13 17:07:53 +08:00
    结贴,sysctl 里面加了一些乱七八糟的东西,删了重启正常了。。
    8 条回复    2023-04-13 10:43:39 +08:00
    dsareopsar
        1
    dsareopsar  
       2023-04-13 09:18:59 +08:00 via Android
    墙内机器吧?间歇性 dns 污染,间歇性阻断
    fiveStarLaoliang
        2
    fiveStarLaoliang  
       2023-04-13 09:24:22 +08:00
    八成是 dns 问题
    alect
        3
    alect  
    OP
       2023-04-13 09:41:01 +08:00
    @dsareopsar 服务器位于德国 Hetzner

    @fiveStarLaoliang 也考虑了 dns 问题,所以测试的时候写入了 hosts 避免解析问题
    dsareopsar
        4
    dsareopsar  
       2023-04-13 09:53:43 +08:00 via Android
    @alect 最好写个程序来测试,因为 http timeout 超时原因有很多,除了 tcp 连接时间以外,还有 tls 超时,response 响应超时,http2 连接超时
    alect
        5
    alect  
    OP
       2023-04-13 10:14:26 +08:00
    @dsareopsar 哇 这就麻烦了,反正肯定是 Ubuntu 的设置哪里肯定有问题,
    我切换到救援系统去测试是完全正常的,一旦回到生产系统测试就有几率出错。
    watzds
        6
    watzds  
       2023-04-13 10:15:18 +08:00
    看看各个阶段的耗时啊,下面请求两次百度,长连接第二次有区别


    curl -X POST -w "\ndns_resolution: %{time_namelookup}, tcp_established: %{time_connect}, ssl_handshake_done: %{time_appconnect}, TTFB: %{time_starttransfer}, total: %{time_total}\n" -s "https://www.baidu.com" "https://www.baidu.com"
    mikewang
        8
    mikewang  
       2023-04-13 10:43:39 +08:00 via iPhone
    curl 加个 -v ,看哪个步骤出问题了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5601 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 01:32 · PVG 09:32 · LAX 17:32 · JFK 20:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.