【问题标题】:How to setup Eureka naming Service instead of RestTemplate?如何设置 Eureka 命名服务而不是 RestTemplate?
【发布时间】:2020-04-27 03:42:02
【问题描述】:

我在 Spring 中开发了 2 个微服务:

  • UI 服务
  • 一个登录服务,它也有用于测试的 UI (html-form)

UI 服务正在使用下面的 uri 使用登录服务,现在我不想提供 url,而是在这里使用 Eureka 命名服务器

UI-服务(代码)

  @RequestMapping("/log")
  public String abc(HttpServletRequest request) {
        final String uri = "http://localhost:8093/accounts/login"; 
       // want to use Eureka discovery instead of directly consuming this service.

         RestTemplate restTemplate = new RestTemplate();
         String result = restTemplate.getForObject(uri, String.class);

         return result;
        //request.setAttribute("mode", "MODE_LOGIN");
   }

【问题讨论】:

  • 您有没有花一些时间阅读文档herehere。这准确地解释了您需要做什么。

标签: java spring rest model-view-controller netflix-eureka


【解决方案1】:

初始化 Eureka 客户端并获取已注册的应用程序:

List<Application> applications = eurekaClient.getApplications().getRegisteredApplications();

    applications.stream()
            .forEach(application -> {
                application.getInstances().stream()
                        .forEach(instanceInfo -> {
              // get instanceInfo.getHostName() instanceInfo.getPort()
                        });
            });

【讨论】:

    猜你喜欢
    • 2020-10-04
    • 2017-10-12
    • 2019-03-07
    • 2020-04-25
    • 1970-01-01
    • 2015-02-12
    • 1970-01-01
    • 2022-01-20
    • 2023-03-30
    相关资源
    最近更新 更多