Я создал JAXRS SERVER
для некоторых веб-сервисов. Сервер работает нормально, но мне нужно добавить новую функцию, чтобы я мог проверить статус сервера в любое время. Поэтому, если сервер завершен, я должен вернуть сообщение, например running
, и если сообщение недоступно down
.Состояние проверки сервера JAXRS
Моя реализация до сих пор:
public class Server
{
public static void main(final String[] args)
{
final JAXRSServerFactoryBean serverFactory = new JAXRSServerFactoryBean();
final SubscriptionService subscriptionService =
new SubscriptionService(SubscriptionRepo.getRepo());
final SystemService systemservice = new SystemService();
serverFactory.setResourceProvider(new SingletonResourceProvider(subscriptionService));
serverFactory.setResourceProvider(new SingletonResourceProvider(systemservice));
serverFactory.setAddress("http://localhost:8888");
serverFactory.setProvider(JacksonJsonProvider.class);
serverFactory.create();
}
}
Я также создал класс обслуживания, где я хочу, чтобы получить статус:
public class SystemService
{
@GET
@Path("/systemstatus")
public Response getSystemStatus()
{
return Response.status(Status.OK.getStatusCode());
}
}
Я действительно понятия не имею, как я могу вернуть статус, если система работает или нет. Может ли кто-нибудь помочь мне с некоторыми идеями о том, как проверить статус сервера?
Ну, если сервер выключен, вы, вероятно, получите ответ HTTP 404. Таким образом, вы можете проверить код ответа после HTTP-запроса: если вы получаете 200 (или 2xx) сервер, если вы получаете 404 (или 4xx или 5xx), сервер не работает. – javatutorial
Это не так актуально. Я могу получить ответ 404 также, когда я запрашиваю URI, который не существует. Но сервер все еще работает и работает ... – dres
Ну, если вы владеете своим сервером, 404, безусловно, означает, что сервер не работает, поскольку ваш URI не изменится, и вы проверите ответ только для этого URI ... или я чего-то не хватает? :) – javatutorial