티스토리 뷰

# 현상

- single queue를 활용하여 데이터를 넣는 function을 만들었다.

- 부하테스트 겸 데이터를 밀어넣는데, DB 연결 초과 에러가 났다.

- 분명 queue 하나로만 돌도록 host.json을 세팅했는데, 왜 그런걸까.

 

# 추측

- host.json으로 single queue로 고정하더라도, queue에 쌓이는 메세지 양이 많아지자, function의 instance가 계속 확장하는 것으로 보인다.

- instance가 확장하는 만큼 DB 연결이 더 많아지고, 이에 DB 연결 초과 에러가 난 것

참고: https://docs.microsoft.com/ko-kr/azure/azure-functions/functions-bindings-storage-queue-output?tabs=csharp#host-json

 

# 해결방안

- Azure Functions의 VM 인스턴스를 1개로 해야함.

참고 : https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings#websitemaxdynamicapplicationscaleout

- App config에 `WEBSITE_MAX_DYNAMIC_APPLICATION_SCALE_OUT`을 설정 값을 1로 수정해여 해결