Samza附錄二 任務(wù)資源

2018-08-18 17:34 更新

該資源公開端點以支持任務(wù)范圍內(nèi)的操作。初始實現(xiàn)包括列出特定作業(yè)的所有任務(wù)的能力。這是“ 工作資源”的子資源,不能單獨使用。

各個端點的響應(yīng)將根據(jù)其功能和范圍而有所不同。但是,所有任務(wù)的資源端點的錯誤消息將具有以下形式。

錯誤信息

每個錯誤響應(yīng)將具有以下結(jié)構(gòu):

{
    "message": "Unrecognized status parameter: null"
}

message 是響應(yīng)中唯一的字段,并包含對該問題的描述。 

獲取所有任務(wù)

列出有關(guān)特定作業(yè)的所有任務(wù)的完整詳細信息

請求
GET /v1/jobs/{jobName}/{jobId}/tasks
響應(yīng)

狀態(tài):200 OK

[
{
   "preferredHost" : "samza-preferredHost",
   "taskName" : "Samza task",
   "containerId" : "0",
   "partitions" : [{
                      "system" : "kafka",
                      "stream" : "topic-name",
                      "partitionId" : "0"
                    }]
 }
 ]
響應(yīng)碼
狀態(tài)描述
200好操作成功完成,并返回作業(yè)的所有任務(wù)。
錯誤(404
提供了無效的作業(yè)實例作為參數(shù)。
{
"message": "Invalid arguments for getTasks. jobName: SamzaJobName jobId: SamzaJobId."
}
500服務(wù)器錯誤
在服務(wù)器上執(zhí)行該命令時發(fā)生錯誤。例如命令超時。
{
    "message": "Timeout waiting for get all tasks."
}

設(shè)計

抽象

TasksResource 需要兩個主要抽象,用戶可以通過這些抽象來處理特定于其環(huán)境的任何細節(jié)。

  1. TaskProxy:這個接口是與 Samza 任務(wù)交互的中心點。它暴露了一種方法來獲得 Samza 工作的所有任務(wù)。
  2. InstallationFinder:InstallationFinder 提供了一個通用接口,用于發(fā)現(xiàn)所有安裝的作業(yè),在作業(yè)包結(jié)構(gòu)及其位置隱藏任何自定義。InstallationFinder 還解決了用于驗證和識別作業(yè)的作業(yè)配置。

組態(tài)

應(yīng)該在與 Samza REST 配置相同的文件中指定 TasksResource 屬性。

名稱描述
task.proxy.factory.class
必需: TaskProxyFactory將用于創(chuàng)建TaskProxy實例。該值是必須實現(xiàn)TaskProxyFactory的完全限定類名稱。Samza配有一個實現(xiàn):
org.apache.samza.rest.proxy.task.SamzaTaskProxy
獲取工作的所有任務(wù)的細節(jié)。它使用
SimpleInstallationRecord
與安裝在磁盤上的Samza作業(yè)進行交互。
job.installations.path必需:包含Samza作業(yè)安裝的文件系統(tǒng)路徑。路徑必須與Samza REST Service在同一主機上。每個安裝必須是一個目錄,其結(jié)構(gòu)符合JobProxy使用的InstallationRecord實現(xiàn)的期望。
job.config.factory.class
用于閱讀Samza作業(yè)配置的配置工廠。這用于獲取InstallationRecord中每個作業(yè)實例的job.name和job.id屬性。它也用于驗證安裝路徑中的特定目錄實際包含Samza作業(yè)。如果沒有指定
org.apache.samza.config.factories.PropertiesConfigFactory
將會被使用。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號