Azure Communication Service에 대한 서비스 제한
이 문서에서는 Azure Communication Services API의 제한 사항 및 가능한 해결 방법을 설명합니다.
제한 패턴 및 아키텍처
서비스 제한에 도달하면 HTTP 상태 코드 429(요청이 너무 많음)가 수신됩니다. 일반적으로 다음 모범 사례는 제한에 사용됩니다.
- 요청당 작업 수를 줄입니다.
- 호출 빈도를 줄입니다.
- 모든 요청은 사용량 제한에 누적되므로 즉각적인 재시도는 피합니다.
제한 패턴에 대한 Azure 아키텍처 설명서의 제한 및 제한 사항을 처리하도록 서비스 아키텍처 를 설정하는 방법에 대한 일반적인 지침을 찾습니다. 제한 제한을 늘리려면 Azure 지원에 요청합니다.
- Azure Portal을 열고 로그인합니다.
- 도움말+지원을 선택합니다.
- 새 지원 요청 만들기를 선택합니다.
- 문제 설명 텍스트 상자에서 Technical을 입력한 다음 Go를 선택합니다.
- 서비스 선택 드롭다운 메뉴에서 서비스 및 구독 제한(할당량)을 선택한 다음, 다음을 선택합니다.
- 문제 설명에서 문제 유형, 구독 및 할당량 유형 값을 선택한 다음, 다음을 선택합니다.
- 사용 가능한 경우 권장 솔루션을 검토한 다음, 다음을 선택합니다.
- 필요에 따라 다른 세부 정보를 추가한 다음 다음을 선택합니다.
- 검토 + 만들기에서 정보를 확인하고 필요에 따라 변경한 다음 만들기를 선택합니다.
단계에 따라 Azure 지원에 요청합니다.
전화 번호 획득
전화 번호를 얻기 전에 구독이 지리적 및 구독 요구 사항을 충족하는지 확인합니다. 그렇지 않으면 전화 번호를 구입할 수 없습니다. 전화 번호 SDK 및 Azure Portal을 통한 구매 번호에는 다음과 같은 제한 사항이 적용됩니다.
연산 | 범위 | 시간 프레임 | 제한(총 요청 수) |
---|---|---|---|
전화 번호 구매 | Azure 테넌트 | - | 1 |
전화 번호 검색 | Azure 테넌트 | 1주 | 5 |
수행할 작업
자세한 내용은 전화 번호 유형 및 전화 통신 개념을 참조하세요.
구매 한도를 늘리려면 Azure 지원에 요청합니다.
- Azure Portal을 열고 로그인합니다.
- 도움말+지원을 선택합니다.
- 새 지원 요청 만들기를 선택합니다.
- 문제 설명 텍스트 상자에서 Technical을 입력한 다음 Go를 선택합니다.
- 서비스 선택 드롭다운 메뉴에서 서비스 및 구독 제한(할당량)을 선택한 다음, 다음을 선택합니다.
- 문제 설명에서 문제 유형, 구독 및 할당량 유형 값을 선택한 다음, 다음을 선택합니다.
- 사용 가능한 경우 권장 솔루션을 검토한 다음, 다음을 선택합니다.
- 필요에 따라 세부 정보를 추가한 다음, 다음을 선택합니다.
- 검토 + 만들기에서 정보를 확인하고 필요에 따라 변경한 다음 만들기를 선택합니다.
ID
연산 | 시간 프레임(초) | 제한(총 요청 수) |
---|---|---|
ID 만들기 | 30 | 1,000 |
ID 삭제 | 30 | 500 |
액세스 토큰 발급 | 30 | 1,000 |
액세스 토큰 철회 | 30 | 500 |
createUserAndToken |
30 | 1,000 |
exchangeTokens |
30 | 500 |
수행할 작업
채팅 스레드를 만들거나 통화를 시작하기 전에 ID 및 토큰을 획득하는 것이 좋습니다. 예를 들어 웹 페이지가 로드되거나 애플리케이션이 시작될 때 이 작업을 수행합니다.
자세한 내용은 Azure Communication Services에 대한 인증을 참조 하세요.
SMS
많은 양의 메시지를 보내거나 받으면 오류가 발생할 429
수 있습니다. 이 오류는 서비스 제한에 도달하려고 했음을 나타냅니다. 메시지가 큐에 대기되고 요청 수가 임계값보다 낮으면 전송됩니다.
SMS에 대한 속도 제한:
연산 | 번호 형식 | 범위 | 시간 프레임 | 제한(요청 번호) | 분당 메시지 단위 |
---|---|---|---|---|---|
메시지 보내기 | 무료 전화 | 숫자당 | 60 | 200 | 200 |
메시지 보내기 | 짧은 코드 | 숫자당 | 60 | 6000 | 6000 |
메시지 보내기 | 영숫자 발신자 ID | 리소스당 | 60 | 600 | 600 |
수행할 작업
속도 제한을 초과하는 요구 사항이 있는 경우 더 높은 처리량을 사용하도록 Azure 지원에 요청을 제출합니다.
SMS SDK 및 서비스에 대한 자세한 내용은 SMS SDK 개요 또는 SMS FAQ를 참조하세요.
전자 메일
제한된 수의 이메일 메시지를 보낼 수 있습니다. 구독에 대한 전자 메일 속도 제한을 초과하면 요청이 거부됩니다. Retry-After 시간이 지난 후에 이러한 요청을 다시 시도할 수 있습니다. 필요한 경우 전송량 한도를 높여 달라고 요청하여 한도에 도달하기 전에 조치를 취합니다.
Azure Communication Services 이메일 서비스는 높은 처리량을 지원하도록 설계되었습니다. 그러나 이 서비스는 고객이 원활하게 온보딩할 수 있도록 초기 속도 제한을 적용하고 새 전자 메일 서비스로 전환할 때 발생할 수 있는 몇 가지 문제를 방지합니다.
전자 메일의 배달 상태를 면밀히 모니터링하면서 2~4주 동안 Azure Communication Services 전자 메일을 사용하여 전자 메일 볼륨을 점진적으로 늘리는 것이 좋습니다. 이러한 점진적 증가를 통해 타사 전자 메일 서비스 공급자는 도메인의 전자 메일 트래픽에 대한 IP 변경에 적응할 수 있습니다. 점진적인 변경은 보낸 사람의 평판을 보호하고 전자 메일 배달의 안정성을 유지할 시간을 제공합니다.
Azure Communication Services 이메일 서비스는 시간당 최대 1~200만 개의 대량 메시지를 지원합니다. 다음을 비롯한 여러 요인에 따라 높은 처리량을 사용하도록 설정할 수 있습니다.
- 고객 최고 트래픽
- 비즈니스 요구 사항
- 실패율을 관리하는 기능
- 도메인 평판
실패율 요구 사항
높은 전자 메일 할당량을 사용하도록 설정하려면 전자 메일 실패율이 1%(1%) 미만이어야 합니다. 실패율이 높은 경우 할당량 증가를 요청하기 전에 문제를 해결해야 합니다. 고객은 실패율을 적극적으로 모니터링해야 합니다.
할당량 증가 후 실패율이 증가하는 경우 Azure Communication Services는 고객에게 즉각적인 조치 및 해결 타임라인을 요청합니다. 극단적인 경우 오류율이 지정된 타임라인 내에서 관리되지 않는 경우 Azure Communication Services는 문제가 해결될 때까지 서비스를 줄이거나 일시 중단할 수 있습니다.
관련된 문서
Azure Communication Services는 실패율을 모니터링하고 관리하는 데 도움이 되는 풍부한 로그 및 분석을 제공합니다. 자세한 내용은 다음 문서를 참조하세요.
- Azure Communication Services 전자 메일에서 보낸 사람 평판 향상
- Email Insights
- Azure Monitor에서 진단 설정을 통해 로그 사용
- 빠른 시작: 전자 메일 이벤트 처리
- 빠른 시작: 관리 클라이언트 라이브러리를 사용하여 Azure Communication Services에서 도메인 표시 안 함 목록 관리
참고 항목
더 높은 한도를 요청하려면 전자 메일 도메인에 대한 할당량 증가의 지침을 따릅니다. 더 높은 할당량은 Azure 관리되는 도메인이 아닌 확인된 사용자 지정 도메인에만 사용할 수 있습니다.
전자 메일에 대한 속도 제한
연산 | 범위 | 시간 프레임(분) | 제한(이메일 수) | 더 높은 제한 사용 가능 |
---|---|---|---|---|
전자 메일 보내기 | 구독당 | 1 | 30 | 예 |
전자 메일 보내기 | 구독당 | 60 | 100 | 예 |
이메일 상태 가져오기 | 구독당 | 1 | 60 | 예 |
이메일 상태 가져오기 | 구독당 | 60 | 200 | 예 |
다음 표에서는 Azure 관리되는 도메인에 대한 제한을 나열합니다.
연산 | 범위 | 시간 프레임(분) | 제한(이메일 수) | 더 높은 제한 사용 가능 |
---|---|---|---|---|
전자 메일 보내기 | 구독당 | 1 | 5 | 아니요 |
전자 메일 보내기 | 구독당 | 60 | 10 | 아니요 |
이메일 상태 가져오기 | 구독당 | 1 | 10 | 아니요 |
이메일 상태 가져오기 | 구독당 | 60 | 20 | 아니요 |
전자 메일의 크기 제한
속성 | 한도 |
---|---|
전자 메일의 받는 사람 수 | 50 |
총 메일 요청 크기(첨부 파일 포함) | 10MB |
구독당 인증된 최대 연결 수 | 250 |
모든 메시지 크기 제한의 경우 Base64 인코딩이 메시지의 크기를 증가시키는 것이 좋습니다. 메시지 첨부 파일 및 기타 이진 데이터가 Base64로 인코딩된 후에 발생하는 메시지 크기 증가를 고려하여 크기 값을 늘려야 합니다. Base64 인코딩은 메시지 크기를 약 33% 증가시키므로 메시지 크기는 인코딩하기 전에 메시지 크기보다 약 33% 더 큽니다. 예를 들어 최대 메시지 크기 값을 약 10MB로 지정하면 실제 최대 메시지 크기 값은 약 7.5MB가 될 수 있습니다.
10MB보다 큰 첨부 파일 보내기
첨부 파일을 최대 30MB까지 전자 메일로 보내려면 지원 요청을 합니다.
30MB보다 큰 전자 메일 파일 첨부 파일을 보내야 하는 경우 이 대체 솔루션을 사용합니다. Azure Blob Storage 계정에 파일을 저장하고 이메일에 파일 링크를 포함합니다. SAS(공유 액세스 서명)를 사용하여 파일을 보호할 수 있습니다. SAS는 스토리지 계정의 리소스에 대한 안전한 위임된 액세스를 제공합니다. SAS를 사용하면 클라이언트가 데이터에 액세스하는 방법을 세부적으로 제어할 수 있습니다.
Blob Storage 계정 사용의 이점:
- 대규모 파일을 처리할 수 있습니다.
- SAS 또는 키를 사용하여 파일 액세스를 정확하게 관리할 수 있습니다.
자세한 내용은 다음을 참조하세요.
수행할 작업
전자 메일 할당량을 늘리려면 전자 메일 도메인에 대한 할당량 증가의 지침을 따릅니다.
참고 항목
이메일 할당량 증가 요청은 평가 및 승인, 특히 금요일 오후에 들어오는 요청의 경우 최대 72시간이 걸릴 수 있습니다.
채팅
Azure Communication Services는 채팅을 지원합니다.
채팅의 크기 제한
속성 | 한도 |
---|---|
호출당 참가자 수 | 250 |
참가자 배치: CreateThread |
200 |
참가자 배치: AddParticipant |
200 |
페이지 크기: ListMessages |
200 |
메시지 크기 | 28KB |
Azure Bot Service당 Azure Communication Services 리소스 수 | 1,000 |
채팅에 대한 속도 제한
연산 | 범위 | 10초당 제한 | 분당 제한 |
---|---|---|---|
채팅 스레드 만들기 | 사용자당 | 10 | - |
채팅 스레드 삭제 | 사용자당 | 10 | - |
채팅 스레드 업데이트 | 채팅 스레드당 | 5 | - |
참가자 추가 또는 참가자 제거 | 채팅 스레드당 | 10 | 30 |
채팅 스레드 가져오기 또는 채팅 스레드 나열 | 사용자당 | 50 | - |
채팅 메시지 가져오기 | 사용자당, 채팅 스레드당 | 50 | - |
채팅 메시지 가져오기 | 채팅 스레드당 | 250 | - |
채팅 메시지 나열 | 사용자당, 채팅 스레드당 | 50 | 200 |
채팅 메시지 나열 | 채팅 스레드당 | 250 | 400 |
읽음 확인 받기(참가자 제한 20명) | 사용자당, 채팅 스레드당 | 5 | - |
읽음 확인 받기(참가자 제한 20명) | 채팅 스레드당 | 100 | - |
채팅 스레드 참가자 나열하기 | 사용자당, 채팅 스레드당 | 10 | - |
채팅 스레드 참가자 나열하기 | 채팅 스레드당 | 250 | - |
메시지 보내기, 메시지 업데이트 또는 삭제 | 채팅 스레드당 | 10 | 30 |
읽음 확인 보내기 | 사용자당, 채팅 스레드당 | 10 | 30 |
입력 표시기 전송 | 사용자당, 채팅 스레드당 | 5 | 15 |
입력 표시기 전송 | 채팅 스레드당 | 10 | 30 |
참고 항목
20명 이상의 참가자가 있는 채팅 스레드에서는 읽음 확인 및 입력 표시기가 지원되지 않습니다.
채팅 스토리지
Azure Communication Services는 채팅 스레드를 만들 때 설정한 보존 정책에 따라 채팅 메시지를 저장합니다.
Important
이 문서에 설명된 기능은 현재 공개 미리 보기로 제공됩니다. 이 미리 보기 버전은 서비스 수준 계약 없이 제공되며, 프로덕션 워크로드에는 권장되지 않습니다. 특정 기능이 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure Preview에 대한 추가 사용 약관을 참조하세요.
채팅 스레드 만들기 API의 보존 정책을 통해 메시지를 무기한 보존하거나 30~90일 사이에서 자동 삭제 중에서 선택할 수 있습니다. 또는 채팅 스레드에 보존 정책을 설정하지 않도록 선택할 수도 있습니다.
엄격한 규정 준수 요구 사항이 있는 경우 채팅 스레드 삭제 API를 사용하여 채팅 스레드 를 삭제하는 것이 좋습니다. 새 보존 정책 이전에 만들어진 스레드는 해당 스레드에 대한 정책을 특별히 변경하지 않는 한 영향을 받지 않습니다.
참고 항목
실수로 메시지를 삭제하면 시스템에서 메시지를 복구할 수 없습니다. 보존 정책이 해당 스레드를 삭제한 후 삭제된 채팅 스레드에 대한 지원 요청을 제출하는 경우 검색할 수 없습니다. 해당 스레드에 대한 정보는 더 이상 사용할 수 없습니다. 필요한 경우 스레드를 만든 후 30일 기간 내에 지원 티켓을 최대한 빨리 열어 도움을 드릴 수 있습니다.
음성 및 비디오 통화
Azure Communication Services는 음성 및 영상 통화를 지원합니다.
PSTN 호출 제한 사항
속성 | 범위 | 제한 |
---|---|---|
아웃바운드 동시 호출 수 기본값 | 숫자당 | 2 |
참고 항목
인바운드 동시 호출에는 제한이 없습니다. Azure 지원에 요청을 제출하여 아웃바운드 동시 호출에 대한 제한을 늘릴 수도 있습니다. 심사 팀은 모든 요청을 검토합니다.
최대 제한 사항 호출
속성 | 한도 |
---|---|
참가자 수 | 350 |
통화 SDK 스트리밍 지원
Azure Communication Services 통화 SDK는 다음과 같은 스트리밍 구성을 지원합니다.
제한 | 웹 | Windows/Android/iOS |
---|---|---|
동시에 보낼 수 있는 나가는 로컬 스트림의 최대 수입니다. | 비디오 1개 또는 화면 공유 1개 | 비디오 1개 + 화면 공유 1개 |
동시에 렌더링할 수 있는 들어오는 원격 스트림의 최대 수입니다. | 비디오 9개 + 화면 공유 1개 | 비디오 9개 + 화면 공유 1개 |
통화 SDK는 이러한 제한을 적용하지 않지만, 이러한 제한을 초과할 경우 사용자가 성능 저하를 경험할 수 있습니다.
통화 SDK 제한 시간
다음 시간 제한은 Azure Communication Services 통화 SDK에 적용됩니다.
작업 | 시간 제한(초) |
---|---|
참가자를 다시 연결하거나 제거합니다. | 120 |
호출에서 새 형식을 추가하거나 제거합니다. (비디오 또는 화면 공유를 시작하거나 중지합니다.) | 40 |
통화 전송 작업 시간 제한입니다. | 60 |
1:1 통화 설정 시간 제한. | 85 |
그룹 통화 설정 시간 제한입니다. | 85 |
PSTN 통화 설정 시간 제한입니다. | 115 |
그룹 통화 시간 제한에 대한 1:1 호출을 승격합니다. | 115 |
수행할 작업
음성 및 비디오 통화 SDK 및 서비스에 대한 자세한 내용은 SDK 및 API의 통화 SDK 개요 또는 알려진 문제를 참조하세요. Azure 지원에 요청을 제출하여 일부 제한을 늘릴 수도 있습니다. 심사 팀은 모든 요청을 검토합니다.
작업 라우터
많은 양의 요청을 보내거나 받으면 오류가 발생할 ThrottleLimitExceededException
수 있습니다. 이 오류는 서비스 제한에 도달했음을 나타냅니다. 요청을 처리하는 데 사용되는 토큰 버킷이 특정 시간 후에 보충될 때까지 요청이 실패합니다.
작업 라우터에 대한 속도 제한
연산 | 범위 | 시간 프레임(초) | 제한(총 요청 수) | 시간 제한(초) |
---|---|---|---|---|
일반 요청 | 리소스당 | 10 | 1,000 | 10 |
수행할 작업
속도 제한을 초과하는 메시지 볼륨을 보내야 하는 경우 acs-ccap@microsoft.com에 이메일을 보내주세요.
Teams 상호 운용성 및 Microsoft Graph
Teams 상호 운용성 시나리오를 사용하면 일부 Microsoft Graph API를 사용하여 모임을 만들 수 있습니다.
Microsoft Graph를 통해 제공되는 각 서비스에는 서로 다른 제한 사항이 있습니다. 서비스별 제한은 이 웹 페이지에 자세히 설명되어 있습니다.
수행할 작업
오류 처리를 구현하는 경우 HTTP 오류 코드 429를 사용하여 제한을 검색합니다. 실패한 응답에는 Retry-After
응답 헤더가 포함됩니다. 지연을 Retry-After
사용하여 요청을 철회합니다. Microsoft Graph는 클라이언트가 제한되는 동안 리소스 사용을 계속 기록하기 때문에 제한에서 복구하는 가장 빠른 방법입니다.
Microsoft Graph 제한 제한에 대한 자세한 내용은 Microsoft Graph 설명서에서 확인할 수 있습니다.