如果您遇到服务调用不通的问题,请按本文的方法尝试解决。

现象

在轻量级配置及注册中心中,服务消费者调用服务提供者失败。

可能的原因

  • 服务在轻量级配置及注册中心注册失败。
  • 服务的网络发生切换。
  • 服务推送失败。

处理办法

  1. 在轻量级配置及注册中心上查看服务是否注册成功。

    • 注册成功,进行步骤 2
    • 注册失败,进行步骤 5
  2. 查看服务所在的实例是否发生网络切换,即服务提供方的 IP 变了。

    • 发生了网络切换,执行步骤 3
    • 未发生网络切换,执行步骤 4
  3. 重新启动应用,使用最新的 IP 注册成功后,再次检查调用是否成功。

    • 调用成功,结束。
    • 仍然调用不通,执行步骤 4
  4. 查看轻量级注册及配置中心的推送日志(${安装目录}/logs/config-server-push.log),排查服务是否推送成功。

    • 如果服务端推送成功,则在消费端的机器或者容器的日志文件中查看是否接收到最新的服务 IP 列表或者观察是否 ERROR 级别的日志。

      基于不同方式开发的应用,日志文件的路径不同:

      • 基于 HSF/Dubbo 开发的应用:${user.home}/logs/configclient/config-client.log
      • 基于 ACM 开发的应用:${user.home}/logs/vipsrv-logs/vipclient.log
      • 基于 Nacos 开发的应用:${user.home}/logs/nacos/naming.log
    • 如果服务端推送不成功,请联系 EDAS 技术支持人员。

  5. 在轻量版配置及注册中心上查看不到该服务的注册。这个时候在应用所在的机器或者容器内查看${user.home}/logs/configclient/config-client.log这个日志文件,看是否注册发生异常。