Azkaban的Web Server源碼探究系列25: 一次性執行execute任務實際分發過程

下面就講解如何把一個任務真正的分發到指定的executor上!!!json

=================================================================api

上節講到了在函數azkaban.executor.ExecutorManager.callExecutorServer中有這麼一行函數

Map<String, Object> jsonResponse = callExecutorForJsonObject(host, port, "/executor", paramList);ui

進入這個函數一探究竟!spa

---ci

// 構造http clientget

ExecutorApiClient apiclient = ExecutorApiClient.getInstance();io

@SuppressWarnings("unchecked")cli

// 構造URIList

URI uri = ExecutorApiClient.buildUri(host, port, path, true, paramList.toArray(new Pair[0]));

 

return apiclient.httpGet(uri, null);

---

具體產生的URL相似於:

 uri = "http://x.x.x.x:port/executor?action=execute&execid=12&user"

因此先暫時告一段落,去啓動executor!!!

相關文章
相關標籤/搜索