2017-06-10 47 views
2

Azure函數帶有一組固定的預先綁定。如何實現Azure函數的自定義綁定?

與此同時,Azure功能基於Web Jobs SDK,它具有一些extensibility story。它可以創建自定義綁定類型,包括自定義觸發器。

是否有可能在Azure Function運行時中運行這些自定義綁定?如果是的話,有沒有關於如何做到這一點的教程或文檔?如果不是,有什麼計劃?

一些示例使用場景將集成到非Azure產品(例如Kafka)或自定義內部協議。

回答

2

現在完全支持自定義輸入和輸出綁定。更多信息可以在Azure WebJobs wiki上找到:https://github.com/Azure/azure-webjobs-sdk/wiki/Creating-custom-input-and-output-bindings

此wiki描述瞭如何爲WebJobs SDK定義自定義綁定擴展。在Azure函數中可以使用這些相同的擴展,而無需進行修改。

有約束力的樣品其寫入鬆弛通道在這裏找到:https://github.com/lindydonna/SlackOutputBinding

+0

觸發器呢?有某種形式的自定義觸發器綁定,其由Durable Extensions使用並且例如事件網格綁定。 – Mikhail

+0

@Mikhail自定義觸發器還沒有正式支持可擴展性(在製作類似的工作和支持動態規模方面存在很多困難)。現在我們傾向於要求人們使用事件網格來定製觸發器,並且我們正在努力改進事件網格綁定以幫助實現這一點。 –

+0

我的理論是,可以從標準創建綁定「派生」,比如Orchestration可能使用存儲隊列,Event Grid基於HTTP。通過這種方式,可以從該綁定獲得可伸縮性後端,並且只需定義更多特定於用例的語義。我是否認爲它錯了? – Mikhail

1

我們預覽了'自帶裝訂'功能'。有關該功能的更多詳細信息,請參閱Extensibility;有關示例和文檔,請參閱WebJobsExtensionSamples。 此外,您可以跟蹤功能here

+0

什麼自定義觸發綁定? – Mikhail

+0

自定義觸發器當前不受支持,不屬於初始擴展性工作的一部分。觸發器需要額外的平臺集成以確保功能應用程序由於事件而喚醒,並且集成不屬於當前範圍。 –

+0

我在某處閱讀了自定義觸發器,EventGrid將在後面使用。 – Prawin