首页 > 解决方案 > 如何使用 Spring 检查远程 REST 服务是否已启动?

问题描述

我有一个使用 SpringBoot 构建的小型 REST 应用程序。我使用 Feign Client 向类似的应用程序发出请求。

我想弄清楚的是如何检查假装请求的应用程序是否启动。如果服务器已启动,则有一个路径 (api/online) 返回 200 OK。我试图做的是发出一个返回 ResponseEntity 并检查其状态代码的 GET 请求。但是当服务器关闭时,我没有得到任何响应,而是抛出了一个异常。

有没有一种优雅的方式来做到这一点?

标签: spring-bootspring-cloud-feign

解决方案


我认为,要优雅地处理异常,您可以使用带有回退的 circutebreaker。看看这篇文章

执行器不是一个选项,因为如果应用程序出现故障,执行器将无法正常工作。

还要看看像 Eurika 这样的发现服务 - 所以在请求某些东西之前,你假装客户端会检查服务是否启动并通过发现服务运行


推荐阅读