Functions를 사용하여 Azure Storage 큐에 메시지 추가
Azure Functions에서 입력 및 출력 바인딩은 코드에서 외부 서비스 데이터를 사용하기 위한 선언적 방식을 제공합니다. 이 빠른 시작에서는 출력 바인딩을 사용하여 HTTP 요청에서 함수가 트리거될 때 큐에 메시지를 만듭니다. Azure Storage 컨테이너를 사용하여 함수가 만드는 큐 메시지를 확인합니다.
필수 조건
이 빠른 시작을 완료하려면 다음이 필요합니다.
Azure 구독 구독이 없으면 시작하기 전에 계정을 만드세요.
Azure Portal에서 첫 번째 함수 만들기의 지침을 따르고 리소스 정리 단계는 수행하지 않습니다. 해당 빠른 시작에서는 함수 앱과, 여기서 사용할 함수를 만듭니다.
출력 바인딩 추가
이 섹션에서는 포털 UI를 사용하여, 앞서 만든 함수에 Queue Storage 출력 바인딩을 추가합니다. 이 바인딩을 통해 최소한의 코드로 큐에 메시지를 만들 수 있습니다. 스토리지 연결 시작, 큐 만들기, 큐에 대한 참조 가져오기 등의 작업을 위해 코드를 작성하지 않아도 됩니다. Azure Functions 런타임 및 큐 출력 바인딩이 이러한 작업을 대신하게 됩니다.
Azure Portal에서 Azure Portal에서 첫 번째 함수 만들기에서 만든 함수 앱에 대한 함수 앱 페이지를 엽니다. 페이지를 열려면 함수 앱을 검색한 후 선택합니다. 그런 후, 함수 앱을 선택합니다.
함수 앱을 선택한 다음, 이전 빠른 시작에서 만든 함수를 선택합니다.
통합을 선택하고 + 출력 추가를 선택합니다.
Azure Queue Storage 바인딩 유형을 선택하고 이 스크린샷의 다음에 나오는 표에 지정된 대로 설정을 사용합니다.
설정 제안 값 설명 메시지 매개 변수 이름 outputQueueItem 출력 바인딩 매개 변수의 이름입니다. 큐 이름 outqueue Storage 계정에서 연결할 큐의 이름입니다. 스토리지 계정 연결 AzureWebJobsStorage 함수 앱에 이미 사용된 스토리지 계정 연결을 사용하거나 새로 만들 수 있습니다. 확인을 선택하여 바인딩을 추가합니다.
이제 출력 바인딩이 정의되었고 큐에 메시지를 추가할 바인딩을 사용하도록 코드를 업데이트해야 합니다.
출력 바인딩을 사용하는 코드 추가
이 섹션에서는 출력 큐에 메시지를 작성 하는 코드를 추가합니다. 메시지에는 쿼리 문자열에서 HTTP 트리거로 전달되는 값이 포함됩니다. 예를 들어, 쿼리 문자열이 name=Azure
를 포함할 경우 큐 메시지는 함수에 전달된 이름: Azure가 됩니다.
함수에서 코드 + 테스트를 선택하여 편집기에서 함수 코드를 표시합니다.
함수 언어에 따라 함수 코드를 업데이트합니다.
다음 예제와 같이 메서드 서명에 outputQueueItem 매개 변수를 추가합니다.
public static async Task<IActionResult> Run(HttpRequest req, ICollector<string> outputQueueItem, ILogger log) { ... }
함수의 본문에서
return
문 바로 앞에 매개 변수를 사용하여 큐 메시지를 만드는 코드를 추가합니다.outputQueueItem.Add("Name passed to the function: " + name);
저장을 선택하여 변경 내용을 저장합니다.
함수 테스트
코드 변경 내용이 저장된 후 테스트를 선택합니다.
테스트가 아래 이미지와 일치하는지 확인하고 실행을 선택합니다.
요청 본문에
name
값 Azure가 들어 있습니다. 이 값은 함수가 호출될 때 만들어지는 큐 메시지에 표시됩니다.여기서 실행을 선택하는 대신 브라우저에 URL을 입력하고 쿼리 문자열에
name
값을 지정하여 함수를 호출할 수 있습니다. 브라우저 메서드는 이전 빠른 시작에 있습니다.로그에서 함수가 성공했는지 확인합니다.
outqueue라는 새 큐는 출력 바인딩이 처음 사용될 때 함수 런타임에 의해 Storage 계정에 만들어집니다. 스토리지 계정을 사용하여 그 안에 큐와 메시지가 만들어졌는지 확인합니다.
AzureWebJobsStorage에 연결된 스토리지 계정 찾기
함수 앱으로 이동하고 구성을 선택합니다.
애플리케이션 설정에서 AzureWebJobsStorage를 선택합니다.
계정 이름을 찾아서 적어 둡니다.
출력 큐 검토
함수 앱에 대한 리소스 그룹에서 이 빠른 시작에 사용하는 스토리지 계정을 선택합니다.
큐 서비스에서 큐를 선택하고 outqueue라는 큐를 선택합니다.
이 큐에는 HTTP 트리거 함수를 실행했을 때 만들어진 큐 출력 바인딩 메시지가 포함되어 있습니다. 기본
name
값 Azure로 함수를 호출했다면 큐 메시지는 함수에 전달된 이름: Azure입니다.함수를 다시 실행하면 큐에 새 메시지가 표시되는 것을 알 수 있습니다.
리소스 정리
이 컬렉션의 다른 빠른 시작은 이 빠른 시작을 기반으로 구성됩니다. 이후의 빠른 시작, 자습서 또는 기타 이 빠른 시작에서 만든 서비스를 사용하여 작업하려는 경우 이 빠른 시작에서 만든 리소스를 정리하지 않습니다.
Azure에서 리소스란 함수 앱, 함수, 스토리지 계정 등을 의미합니다. 리소스는 리소스 그룹으로 그룹화되며 그룹을 삭제하면 그룹의 모든 항목을 삭제할 수 있습니다.
이러한 빠른 시작을 완료하기 위해 리소스를 만들었습니다. 이러한 리소스에 대한 요금이 계정 상태 및 서비스 가격 책정에 따라 청구될 수 있습니다. 리소스가 더 이상 필요하지 않게 되면 다음과 같이 삭제합니다.
Azure Portal에서 리소스 그룹 페이지로 이동합니다.
함수 앱 페이지에서 해당 페이지로 이동하려면 개요 탭을 선택한 다음, 리소스 그룹 아래의 링크를 선택합니다.
대시보드에서 해당 페이지로 이동하려면 리소스 그룹을 선택한 다음, 이 문서에 사용한 리소스 그룹을 선택합니다.
리소스 그룹 페이지에서 포함된 리소스 목록을 검토하고 삭제하려는 항목인지 확인합니다.
리소스 그룹 삭제를 선택하고 지시를 따릅니다.
삭제하는 데 몇 분 정도 걸릴 수 있습니다. 완료되면 알림이 잠시 표시됩니다. 또한 페이지 위쪽의 종 모양 아이콘을 선택하여 알림을 확인할 수도 있습니다.
다음 단계
이 빠른 시작에서는 기존 함수에 출력 바인딩을 추가했습니다. Queue Storage에 바인딩에 대한 자세한 내용은 Azure Functions Storage 큐 바인딩을 참조하세요.
- Azure Functions 트리거 및 바인딩 개념
Functions를 다른 서비스와 통합하는 방법을 알아봅니다. - Azure Functions 개발자 참조
Functions 런타임과 함수를 코딩하고 트리거 및 바인딩을 정의하는 방법에 대한 참조의 기술 정보를 제공합니다. - Azure Functions를 로컬에서 코딩 및 테스트
로컬로 함수를 개발하기 위한 옵션을 설명합니다.