簡體   English   中英

使用 Java/Spring 連接到 Azure 事件網格和服務總線

[英]Connecting to Azure Event Grid and Service Bus using Java/Spring

我有一個場景,只要 Azure 服務總線的隊列/主題中有消息,Azure ServiceBus就會將事件發送到事件網格 那么如何在 Java/Spring 中與 Event Grid 建立連接以接收事件以及與 Service Bus 建立連接以提取消息。 在 Java/Spring 中要進行哪些配置才能與 Event Grid 和 Azure 服務總線建立連接? 此外,必須在應用程序端(application.yml 或屬性文件)進行哪些配置才能包含連接字符串等內容?

Azure 服務總線到事件網格集成

服務總線現在可以在隊列中有消息時向事件網格發出事件,或者在沒有接收者的情況下訂閱。 您可以為服務總線命名空間創建事件網格訂閱,偵聽這些事件,然后通過啟動接收器對事件做出反應。

要啟用該功能,您需要以下項目:

  • 具有至少一個服務總線隊列的服務總線高級命名空間或具有至少一個訂閱的服務總線主題。
  • 對服務總線命名空間的貢獻者訪問。 導航到 Azure 門戶中的服務總線命名空間,然后導航到 select 訪問控制 (IAM) 和 select 角色分配選項卡。 驗證您是否具有對該命名空間的貢獻者訪問權限。
  • 此外,您需要服務總線命名空間的事件網格訂閱。 此訂閱接收來自事件網格的通知,表明有消息要提取。 典型的訂閱者可能是 Azure 應用服務、Azure 功能的邏輯應用功能,或聯系 web 應用的 webhook。 然后訂閱者處理消息。

在此處輸入圖像描述

查看此Microsoft 文檔以獲取更多信息。

選中此項以使用 Azure Function 連接兩者。

檢查此文檔以使用Logic App連接兩者。

Azure CLI:

namespaceid=$(az resource show --namespace Microsoft.ServiceBus --resource-type namespaces --name "<service bus namespace>" --resource-group "<resource group that contains the service bus namespace>" --query id --output tsv

az eventgrid event-subscription create --resource-id $namespaceid --name "<YOUR EVENT GRID SUBSCRIPTION NAME>" --endpoint "<your_endpoint_url>" --subject-ends-with "<YOUR SERVICE BUS SUBSCRIPTION NAME>"

Powershell:

$namespaceID = (Get-AzServiceBusNamespace -ResourceGroupName "<YOUR RESOURCE GROUP NAME>" -NamespaceName "<YOUR NAMESPACE NAME>").Id

New-AzEVentGridSubscription -EventSubscriptionName "<YOUR EVENT GRID SUBSCRIPTION NAME>" -ResourceId $namespaceID -Endpoint "<YOUR ENDPOINT URL>” -SubjectEndsWith "<YOUR SERVICE BUS SUBSCRIPTION NAME>"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM