Azure Functions 를 Atlas 와 함께 사용할 수 있습니다.
모범 사례
Azure Functions 와 Atlas 간의 연결을 올바르게 관리 하려면 다음 권장사항 사용하세요.
Azure 함수 핸들러의
Run메서드 외부에서 MongoDB 서버에 대한 클라이언트 정의합니다.함수를 호출할 때마다 새 클라이언트 객체 정의하지 마세요. 이렇게 하면 드라이버 각 함수 호출에 대해 새 데이터베이스 연결을 생성하게 됩니다. 이 경우 비용이 많이 들 수 있으며 애플리케이션 데이터베이스 연결 제한을 초과할 수 있습니다. 최상의 성능을 얻으려면 다음 지침을 따르세요.
클라이언트 객체 한 번 생성합니다.
함수가 함수 호출 전반에서 클라이언트 재사용할 수 있도록 객체 를 저장합니다.
연결 예시는 기존 데이터베이스 연결을 재사용하여 데이터베이스와의 통신 속도를 높이고 애플리케이션 트래픽과 관련하여 데이터베이스에 대한 연결 수를 합리적인 수준으로 유지합니다.
Azure Functions에서 Atlas 클러스터에 대한 네트워크 액세스를 제한합니다.
Atlas cluster 와 Azure Functions 간의 네트워크 피어링 연결 을 사용하거나 비공개 엔드포인트 를 사용하여 비공개 네트워킹을 통해 Atlas cluster 에 연결하여 IP 액세스 목록에서 비공개 IP 주소만 허용할 수 있습니다.
참고
이 구성에는 가상 네트워크(VNet) 통합이 구성된 Azure Functions 프리미엄 플랜이 필요합니다.
비공개 네트워킹을 사용하지 않는 경우, NAT 게이트웨이를 사용하여 Atlas cluster에 연결하는 것이 좋습니다. 아웃바운드 IP 주소 변경 사항 및 고정 아웃바운드 IP 주소를 보장하기 위한 전략을 검토합니다.
유휴 시간 1분 후 자동으로 연결을 종료하려면 maxIdleTimeMS를
60000으로 설정합니다.maxIdleTimeMS를 조정하면 서버리스 함수에서 시간 초과 오류 발생을 줄이는 데 유용할 수 있습니다.
연결 예시
mongodb-developer 리포지토리 의 Azure Functions 예제 에는 Atlas 클러스터를 사용하여 MongoDB C# 운전자 및 Azure Functions로 작업하는 방법을 보여주는 예시 코드가 포함되어 있습니다.
Visual Studio Code에서 Azure Functions를 사용하는 방법에 대해 자세히 학습하려면 빠른 시작: Visual Studio Code를 사용하여 Azure 에서 C# 함수 만들기를 참조하세요.
Visual Studio에서 Azure Functions를 사용하는 방법에 대해 자세히 학습하려면 빠른 시작: Visual Studio를 사용하여 Azure 에서 첫 번째 C# 함수 만들기를 참조하세요.