.NET 6 Service Bus 트리거 Azure 기능 - 1부

6402 단어
이제 .NET 6이 GA이므로 .NET6으로 Azure Function을 개발하는 방법을 설명하겠습니다. 이 기사에서는 다음과 같은 설정 및 로컬에서 기능을 개발하는 방법을 사용합니다.
  • 서비스 버스 주제 트리거
  • 사용자 관리 ID 연결
  • .NET 6

  • 원하는 대로 다른 바인딩 및 연결 유형을 사용할 수 있지만 최소한 Managed Identity 연결에 관심이 있을 수 있습니다.

    전제 조건


  • Visual Studio 2022(또는 .NET 6을 지원하는 다른 IDE)
  • Azure 구독

  • Service Bus 네임스페이스 및 주제 만들기



    먼저 Service Bus 토픽을 생성해 보겠습니다.

    1. 서비스 버스를 만듭니다.


    2. 주제 기능을 지원하므로 최소한 표준 계층을 선택하십시오.



    3. 주제를 추가합니다. 여기에 몇 가지 옵션이 있지만 지금은 기본 설정을 사용합니다.



    4. 모니터링할 Azure Function에 대한 구독을 추가합니다. 지금은 최대 배송 횟수를 "1"로 설정했습니다.




    액세스 제어 설정(IAM)



    나는 지금 데이터 수신기로 자신을 추가합니다.

    1. 주제의 IAM 메뉴로 이동하여 "추가"를 클릭합니다.



    2. 역할 할당 추가에서 "Azure Service Bus Data Receiver"를 선택합니다.



    3. 계정을 선택하고 구성원에게 할당합니다.

    나중에 Azure Function Managed Id에 대해서도 동일한 작업을 수행합니다.

    Azure 함수 프로젝트 만들기



    이제 Service Bus가 준비되었으므로 Azure Function을 만들어 보겠습니다.

    1. Visual Studio 2022에서 새 함수 프로젝트를 만듭니다. .NET 6 및 Service Bus 주제 트리거를 선택합니다. 주제 및 구독 이름을 업데이트합니다.



    2. 프로젝트가 생성되면 ConnectionString 속성의 ServiceBusTrigger 인수를 업데이트합니다. "ServiceBusConnection"을 매개변수 이름으로 사용합니다.

    [FunctionName("Function1")]
    public void Run([ServiceBusTrigger(
        "mytopic",
        "FunctionSubscription", 
        Connection = "ServiceBusConnection")]string mySbMsg)
    {
        _logger.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
    }
    


    3. local.settings.json을 열고 아래와 같이 __fullyQualifiedNamespace를 추가하여 Identity 기반 연결을 활성화합니다. 자세한 내용은 here을 참조하십시오.

    호스트 이름을 귀하의 것으로 업데이트하십시오.

    {
      "IsEncrypted": false,
      "Values": {
        "AzureWebJobsStorage": "UseDevelopmentStorage=true",
        "FUNCTIONS_WORKER_RUNTIME": "dotnet",
        "ServiceBusConnection__fullyQualifiedNamespace": "myservicebusforaf.servicebus.windows.net"
      }
    }
    


    4. NuGet 관리자를 열고 Microsoft.Azure.WebJobs.Extensions.ServiceBus를 버전 5 이상으로 업데이트합니다. 사용자 Managed Identity 기본 연결에 필요합니다.



    디버그



    설정을 테스트할 시간입니다.

    1. F5를 입력하여 디버깅을 시작합니다. 또한 Run 메서드에 중단점을 배치합니다.

    2. Azure Portal에서 "Service Bus Explorer"로 이동하여 테스트 데이터를 보냅니다.



    3. 예상대로 중단점에 도달하고 들어오는 데이터가 표시되어야 합니다.



    에서 이 함수를 Azure Function에 게시합니다.

    좋은 웹페이지 즐겨찾기