【问题标题】:Delays of 127s between google app engine and azure cognitive search谷歌应用引擎和 Azure 认知搜索之间的 127 延迟
【发布时间】:2022-06-15 16:24:01
【问题描述】:

我们的大部分服务都在 Google 云上,但我们连接到 Azure 认知搜索以进行全文搜索。

从大约一个月前开始,应用引擎和认知搜索之间开始出现随机延迟,请求持续花费 127.2-127.3 秒,即比正常请求多出 127 秒。这是专门针对认知搜索的请求,而不是基础设施或代码的任何其他部分。

奇怪的是,这些延迟不会出现在本地测试、vms、k8s 或其他任何地方。尽管如此,在花了 3 周的时间来回答后,谷歌坚持认为这是由“丢包”引起的“天蓝色问题”。它们确实表明一些请求连接到 ipv4,而另一些请求连接到 ipv6 地址,但我在这里也没有发现相关性。

什么样的问题会导致如此特殊的延迟?

【问题讨论】:

    标签: google-app-engine networking ipv6 azure-cognitive-search


    【解决方案1】:

    这似乎是由于 IPv6 问题造成的,并且请求库(或底层 python 基础设施)在多次以指数方式后退重试后切换到 IPv4,导致大约 2^7-1 秒的延迟。

    可以使用这个丑陋的 hack 来强制 IPv4 连接:

    import socket
    import requests.packages.urllib3.util.connection as urllib3_cn
    
    # https://pythonadventures.wordpress.com/2019/06/28/force-requests-to-use-ipv4/
    urllib3_cn.allowed_gai_family = lambda: socket.AF_INET  # force IPv4
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多