langhuishan
V2EX  ›  问与答

pymysql 使用实际 ip 创建连接要 10 秒,换成 127.0.0.1 后秒连。

  •  
  •   langhuishan · Jul 15, 2024 · 2646 views
    This topic created in 850 days ago, the information mentioned may be changed or developed.

    早上机房断电,重启之后有个 python 写的服务非常卡,图片出来要 10 多秒,原来一直正常的,又重启了几次,还是如此。断点查了下,发现是在 pymysql 创建连接时候卡住了,代码上用的是 mysql 主机真实 ip ,想着试下换成本地 ip 看看,没想到居然好了。但是用其他服务器去连接时,还是非常卡。 有大佬知道具体原理不?

    10 replies  •  2024-07-17 11:24:23 +08:00
    a663
    a663
    Jul 15, 2024
    1
    猜测是网络原因
    走主机 IP 时,会先走交换机转一圈,再从主机网卡连接
    走 127.0.0.1 直接就是 lo 网卡
    djangovcps
    djangovcps
    Jul 15, 2024
    2
    mysql 有个配置,改下
    tsingkong
    tsingkong
    Jul 15, 2024
    3
    禁用 ipv6 试试?
    263
    263
    Jul 15, 2024❤️1
    4
    skip_name_resolve
    julyclyde
    julyclyde
    Jul 15, 2024
    5
    @a663 那不可能
    IvanLi127
    IvanLi127
    Jul 15, 2024
    6
    机房断电,难道路由配置丢了?
    lumia1020
    lumia1020
    Jul 15, 2024❤️1
    7
    同意 @263 的说法,可能和名字反向解析有关。之前连接局域网的 ftp 服务器也很慢,查了下和 DNS 反向解析有关。
    https://www.adamfei.com/dns-reverse-resolution-led-to-the-slower-network-connection/
    skuuhui
    skuuhui
    Jul 16, 2024
    8
    traceroute 一下
    killva4624
    killva4624
    Jul 16, 2024
    9
    tcpdump 抓个包,再把 logger 改成 debug ,看看就知道哪个过程了。
    julyclyde
    julyclyde
    Jul 17, 2024
    10
    @IvanLi127 那不可能
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1146 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 18:06 · PVG 02:06 · LAX 10:06 · JFK 13:06
    ♥ Do have faith in what you're doing.