1

ジョブのステータスを取得するために Spark Job Server にクエリを実行するための残りのリクエストを作成しています。コードは次のようになります。

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リクエストに追加する方法を知る必要があるだけですユーザーに通知するような処理の種類。

これを行うライブラリはありますか?

4

1 に答える 1