我正在发出休息请求以查询 Spark 作业服务器以获取作业的状态。代码如下所示:
private Future<JobResult> getJobResultFuture(String jobId) {
ExecutorService executorService = Executors.newSingleThreadExecutor();
Future<JobResult> resultFuture = executorService.submit(() -> {
while (true) {
JobResult jobResponse = getJobResponse(jobController.getStatus(jobId));
if (jobResponse.isJobComplete()) {
return jobResponse;
}
Thread.sleep(RESPONSE_RETRY_TIME);
}
});
return resultFuture;
}
我正在向作业服务器发出如下请求:
public String getStatus(String jobId) {
WebResource resource = CLIENT.resource(jobServerURL() + "/jobs/" + jobId);
return resource.type(MediaType.TEXT_PLAIN).get(String.class);
}
但我觉得这不是正确的方法,我只需要知道如何向 Web 请求添加某种处理程序/侦听器,以便当我可以从作业服务器获取状态并且我可以执行一些类似于通知用户的处理方式。
有没有这样做的图书馆?