IoT 中樞配額和節流
本文章說明適用於 IoT 中樞資源的限制。
每個 Azure 訂用帳戶可以在免費層中最多可以有 50 個 IoT 中樞,以及最多 1 個中樞。
每個 IoT 中樞都會以特定層中的單位佈建。 層級和單位數會決定每天的訊息配額上限。 免費層中樞用於計算每日配額的訊息大小為 0.5 KB,而所有其他層則為 4 KB。 如需詳細資訊,請參閱 Azure IoT 中樞價格或為您的解決方案選擇正確的 IoT 中樞層。
您可以在 Azure 入口網站中找到中樞的配額限制。 您的 IoT 中樞的 [概觀] 頁面會列出 [每日訊息配額]。 您也可以在 [中樞設定]>[價格和調整] 中檢視和調整此限制。
該層也會決定 IoT 中樞在所有作業上強制執行的節流處理限制。
作業節流處理
作業節流是在分鐘範圍內套用的速率限制,用於防止不當使用。 節流也會受限於流量成形。
建議您對呼叫進行節流,以免未達到/超過節流限制。 如果您達到限制,IoT 中樞會回應錯誤碼 429 時,而用戶端應該輪詢並重試。 這些限制是每個中樞 (或在部分案例為每個中樞/單位)。 如需詳細資訊,請參閱重試模式。
如需哪些作業要收費以及在哪些情況下收費的定價詳細資料,請參閱計費資訊。
基本和標準層作業
下表顯示所有 IoT 中樞層中可用作業的強制執行節流。 值是指個別的中樞。
節流處理 | 免費、B1 和 S1 | B2 和 S2 | B3 和 S3 |
---|---|---|---|
身分識別登錄作業 (建立、擷取、列出、更新、刪除) | 1.67/秒/單位 (100/分鐘/單位) | 1.67/秒/單位 (100/分鐘/單位) | 83.33/秒/單位 (5,000/分鐘/單位) |
新裝置連線 (這項限制適用於新連線的速率,而非連線總數) | 100/秒或 12/秒/單位較高者 例如,兩個 S1 單位是 2*12 = 24 個新連線/秒,但您在所有單位上至少具有 100 個新連線/秒。 若有九個 S1 單位,您的全部單位就會擁有 108 個新連線/秒 (9*12)。 |
120 個新連線/秒/單位 | 6,000 個新連線/秒/單位 |
裝置到雲端傳送 | 高於 100 個傳送作業/秒或 12 個傳送作業/秒/單位 例如,兩個 S1 單位是 2*12 = 24/秒,但您在所有單位上至少擁有 100 個傳送作業/秒。 若有九個 S1 單位,您的全部單位就會擁有 108 個傳送作業/秒 (9*12)。 |
120 個傳送作業/秒/單位 | 6,000 個傳送作業/秒/單位 |
File upload | 1.67 個檔案上傳初始化/秒/單位 (100/分鐘/單位) | 1.67 個檔案上傳初始化/秒/單位 (100/分鐘/單位) | 83.33 個檔案上傳初始化/秒/單位 (5,000/分鐘/單位) |
查詢 | 20/分鐘/單位 | 20/分鐘/單位 | 1,000/min/unit |
標準層作業
下表顯示僅可用於標準層作業的強制執行節流。 值是指個別的中樞。
節流處理 | 免費和 S1 | S2 | S3 |
---|---|---|---|
雲端到裝置的傳送 | 1.67 個傳送作業/秒/單位 (100 則訊息/分鐘/單位) | 1.67 個傳送作業/秒/單位 (100 個傳送作業/分鐘/單位) | 83.33 個傳送作業/秒/單位 (5,000 個傳送作業/分鐘/單位) |
雲端到裝置的接收 (僅限裝置使用 HTTPS 時) |
16.67 個接收作業/秒/單位 (1,000 個接收作業/分鐘/單位) | 16.67 個接收作業/秒/單位 (1,000 個接收作業/分鐘/單位) | 833.33 個接收作業/秒/單位 (50,000 個接收作業/分鐘/單位) |
直接方法 | 160KB/秒/單位1 | 480KB/秒/單位1 | 24MB/秒/單位1 |
對應項 (裝置與模組) 讀取 | 100/秒 | 100/秒或 10/秒/單位,取其較高者 | 500/秒/單位 |
對應項更新 (裝置與模組) | 50/秒 | 50/秒或 5/秒/單位,取其較高者 | 250/秒/單位 |
作業的操作 (建立、更新、列出、刪除) |
1.67/秒/單位 (100/分鐘/單位) | 1.67/秒/單位 (100/分鐘/單位) | 83.33/秒/單位 (5,000/分鐘/單位) |
作業裝置操作 (更新對應項,叫用直接方法) |
10/秒 | 10/秒或 1/秒/單位,取其較高者 | 50/秒/單位 |
設定與 Edge 部署 (建立、更新、列出、刪除) |
0.33/秒/單位 (20/分鐘/單位) | 0.33/秒/單位 (20/分鐘/單位) | 0.33/秒/單位 (20/分鐘/單位) |
裝置串流初始速率 | 5 個新的資料流/秒 | 5 個新的資料流/秒 | 5 個新的資料流/秒 |
同時連線之裝置串流的數目上限 | 50 | 50 | 50 |
裝置串流資料轉送上限 (每日彙總量) | 300 MB | 300 MB | 300 MB |
2 節流計量大小為 4 KB。 節流只基於要求承載大小。
節流詳細資料
計量大小會決定耗用節流限制的增量。 如果您的直接呼叫承載介於 0 KB 到 4 KB 間,即計算為 4 KB。 達到 160 KB/秒/單位的限制之前,每個單位每秒最多可執行 40 次呼叫。
同樣地,若您的承載介於 4 KB 至 8 KB 之間,則每個呼叫帳戶為 8 KB,且您可以在達到上限之前,每個單位每秒最多執行 20 次呼叫。
最後,如果您的承載大小介於 156 KB 到 160 KB 間,在達到 160 KB/秒/單位的限制前,中樞中每個單位每秒只可進行 1 次呼叫。
如果是第 S3 層的工作裝置作業 (請更新對應項,叫用直接方法),50/秒/單位僅適用於使用工作叫用方法時。 若您直接叫用直接方法,則會適用 24 MB/秒/單位 (針對 S3) 的原始節流限制。
您的雲端到裝置和裝置到雲端的節流決定您可以傳送訊息的最高速率,而不分 4 KB 區塊。 裝置到雲端的訊息最多可達 256 KB;雲端到裝置的訊息最多可達 64 KB。 這些是各類型訊息的訊息大小上限。
流量成形
為了容納高載流量,IoT 中樞會在一段時間內接受超過節流的要求。 系統會立即處理其中的前幾個要求。 但如果要求數目持續違反節流,IoT 中樞會開始將要求排入佇列,並以限制速率處理要求。 此效果稱為流量成形。 此外,此佇列的大小會受到限制。 若持續發生節流違規,則佇列最終會填滿,且 IoT 中樞會以 429 ThrottlingException
開始拒絕要求。
例如,您每秒傳送 200 則裝置到雲端訊息至 S1 IoT 中樞 (其限制為 100 訊息/秒)。 在前一分鐘或兩分鐘內,系統會立即處理訊息。 不過,由於裝置會繼續傳送超過節流限制的訊息,IoT 中樞起初每秒僅會處理 100 則訊息,並將其餘訊息放在佇列中。 您開始留意到延遲增加。 最後佇列填滿,您開始收到 429 ThrottlingException
,且「節流錯誤數目」IoT 中樞計量開始增加。 若要了解如何根據計量建立警示和圖表,請參閱監視 IoT 中樞。
身分識別登錄作業節流
裝置身分識別登錄作業會作為裝置管理與佈建案例中的執行階段用途。 透過匯入和匯出作業,即可支援讀取或更新大量的裝置身分識別。
透過大量登錄更新作業 (而非大量匯入和匯出工作) 進行身分識別作業時,即會套用相同的節流限制。 例如,如果您要提交建立 50 部裝置的大量作業,並有 1 個單位的 S1 IoT 中樞時,每分鐘只接受兩個大量要求。 此限制是因為 1 個單位的 S1 IoT 中樞身分識別作業節流為 100/分鐘/單位。 而且在此案例中,相同分鐘中的第三個 (及三個以上) 要求會遭到拒絕,因為已達到限制。
裝置連線節流
「裝置連線」節流會控制新裝置可與 IoT 中樞建立連線的速率。 裝置連線節流與同時連線裝置的數目上限無關。 在 IoT 中樞內建立單位數目,以增加裝置連線速率。
例如,若您購買單一 S1 單位,則得到每秒 100 個連線的節流。 因此,如要連線至 100,000 部裝置,至少需要 1,000 秒 (約 16 分鐘)。 不過,若您已將裝置登錄在您的身分識別登錄中,則可以有任意數量的同時連線裝置 (最多 1,000,000)。
其他 限制
IoT 中樞會強制執行其他作業限制:
作業 | 限制 |
---|---|
裝置和模組身分識別 | 裝置總數加上可向單一 IoT 中樞註冊的模組數,目前上限為 1,000,000。 |
檔案上傳 | 每個裝置 10 個並行檔案上傳。 |
作業1 | 並行工作數上限為 1 個 (適用於免費版和 S1)、5 個 (適用於 S2)、10 個 (適用於 S3)。 但所有層級的最大並行裝置匯入/匯出工作數為 1。 工作記錄最多保留 30 天。 |
額外端點 | 基本和標準 SKU 中樞可以有 10 個額外的端點。 免費 SKU 中樞包含 1 個額外端點。 |
訊息路由查詢 | 基本和標準 SKU 中樞可以有 100 個路由查詢。 免費 SKU 中樞可包含五個路由查詢。 |
訊息擴充 | 基本和標準 SKU 中樞最多可以有 10 個訊息擴充。 免費 SKU 中樞最多可以有 2 個訊息擴充。 |
裝置到雲端傳訊 | 訊息大小上限 256 KB |
雲端到裝置的傳訊1 | 訊息大小上限 64 KB。 擱置傳遞的傳遞訊息數上限為 50。 |
直接方法1 | 要求的直接方法承載大小上限為 128 KB,回應亦為 128 KB。 |
自動裝置和模組設定 1 | 每個基本或標準 SKU 中樞 100 個設定。 每個免費 SKU 中樞 10 項設定。 |
IoT Edge 自動部署 1 | 每個部署 50 個模組。 每個基本或標準 SKU 中樞 100 個部署 (包括分層部署)。 每個免費中樞 10 個部署。 |
對應項1 | 所需屬性和報告屬性區段的大小上限各為 32 KB。 標籤區段的大小上限為 8 KB。 每個區段中的個別屬性大小上限為 4 KB。 |
共用存取原則 | 共用存取原則的數目上限為 16 項。 在該限制內,授與服務連線存取權的共用存取原則數目上限為 10。 |
限制輸出網路存取 | 允許的 FQDN 數目上限為 20。 |
x509 CA 憑證 | IoT 中樞上可註冊的 x509 CA 憑證數目上限為 25 個。 |
1 IoT 中樞的基本層中不提供此功能。 如需詳細資訊,請參閱如何選擇適合的 IoT 中樞。
增加配額或節流限制
透過增加 IoT 中樞中佈建的單位數,您可以隨時提高配額或節流限制。
Latency
IoT 中樞致力於為所有作業提供低延遲。 但基於網路狀況和其他無法預測的因素,IoT 中樞無法保證特定延遲。 設計解決方案時,您應該:
- 避免進行有關任何 IoT 中樞作業最大延遲的任何假設。
- 在最接近您裝置的 Azure 區域中佈建 IoT 中樞。
- 考慮使用 Azure IoT Edge 在裝置或靠近裝置的閘道上執行無法容忍延遲的作業。
如先前所述,新增 IoT 中樞單位既會影響節流功能,又不會提供額外的延遲好處或保證。
如果您注意到作業的延遲時間莫名其妙增加,請連絡 Microsoft 支援服務。