首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >领事指南,为什么领事服务所需的时间比预期的要长?

领事指南,为什么领事服务所需的时间比预期的要长?
EN

Stack Overflow用户
提问于 2018-06-04 08:13:09
回答 1查看 108关注 0票数 0

我正在集成发现系统。我在java服务中使用领馆进行python服务和consulate。在我的架构中,每次提出请求之前,我都会请求服务。然而,将3-4毫秒的添加到实际调用中。与目录/代理api不同,我使用healthy来获取健康的服务实例,并进一步使用。我只是想找到正确的方法来做到这一点,并希望减少这个提取时间(3-4毫秒)。请注意,我没有使用码头。以下是获取服务的代码。

代码语言:javascript
复制
    service = self.consul_client.health.service(service_id=service_id, passing=True)
    if not service:
        return None
    service = service[0]['Service']
    service_url = str(service['Address'])+":"+str(service['Port'])
    if "http" not in service_url:
        service_url = "http://" + service_url
    return service_url
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-06 08:37:38

额外的延迟是由于您正在向领事发出的API调用。我想不出几种方法来改善这个-

  1. 缓存健康的urls并定期更新它们,如果请求失败(需要重试机制)
  2. 使用已实现该功能的领事支持客户端负载平衡库。
  3. 使用领事感知代理,如https://linkerd.io/
  4. 使用领事的DNS接口DNS缓存 (要求您的服务将侦听已知端口或使用SRV查询)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50676061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档