Kubernetes 上的事件方格 - 批次事件傳遞

具有 Azure Arc 的 Kubernetes 事件方格支援在單一傳遞要求中傳遞多個事件。 這項功能可讓您增加整體傳遞輸送量,而不需要 HTTP 每個要求的額外負荷。 批次事件傳遞功能預設會關閉,並可使用事件訂閱設定來開啟。

重要

具有 Azure Arc 的 Kubernetes 上的事件方格目前處於公開預覽狀態。 此預覽版本是在沒有服務等級協定的情況下提供,不建議用於生產工作負載。 可能不支援特定功能,或可能已經限制功能。 如需詳細資訊,請參閱 Microsoft Azure 預覽版增補使用條款

警告

處理每個傳遞要求的允許持續時間上限不會變更,即使事件處理常式程式碼可能必須針對每個批次要求執行更多工作也一樣。 傳遞逾時預設為 60 秒。

批次事件傳遞原則

您可以調整下列兩個設定,在 Kubernetes 的事件方格中依每個事件訂閱自訂批次事件傳遞行為:

  • 每個批次的事件數目上限

    此設定會設定可新增至批次傳遞要求的事件數目上限。

  • 偏好的批次大小 (KB)

    此設定項目可用來進一步控制每個傳遞要求可以傳送的 KB 數目上限。

批次事件傳遞行為

  • 全部或無

    Kubernetes 上的事件方格會以「全部或無」語意運作。 不支援部分成功的批次事件傳遞。 使用事件處理常式時應該注意,只要求其每批次最多能在 60 秒內合理處理的事件。

  • 開放式批次處理

    批次處理原則設定不是批次處理行為的嚴格界限,且會遵守最佳方式。 在低事件速率下,您通常會發現批次大小小於每個批次所要求的事件上限。

  • 批次傳遞預設為關閉狀態

    根據預設,Kubernetes 上的事件方格只會在每個傳遞要求中新增一個事件。 要在批次中開啟事件傳遞,需設定事件訂閱承載文章前述內容中的任一設定。

  • 預設值

    建立事件訂閱時,不需要同時設定每個批次的事件數目上限,以及大概的批次大小 (KB)。 如果只設定其中之一,Kubernetes 上的事件方格會使用可設定的預設值。

範例

下列範例示範如何在端點屬性中設定 maxEventsPerBatchpreferredBatchSizeInKilobytes 以啟用批次處理。

{
    "properties":
    {
        "destination":
        {
            "endpointType": "WebHook",
            "properties":
             {
                "endpointUrl": "<your_webhook_url>",
                "maxEventsPerBatch": 10,
                "preferredBatchSizeInKilobytes": 64
             }
        },
    }
}

下一步

若要了解適用於 Kubernetes 的 Azure Arc 事件方格所支援的目的地和處理常式,請參閱 Kubernetes 上的事件方格 - 事件處理常式