사용자 및 비율 제한

Device Access 프로젝트는 상용 서비스의 환경 및 유형에 따라 사용자, 구조 및 비율 제한에 따라 제한됩니다.

Google은 개발자가 매력적인 사용자 환경을 만들기를 바라는 동시에 사용자가 Nest 서비스와 기기를 항상 사용할 수 있기를 바랍니다. 일정 기간 동안 많은 수의 요청을 하는 통합은 서비스와 기기 가용성에 영향을 줄 수 있으므로 SDM API는 비율 제한을 적용합니다. 비율 제한은 지정된 기간의 API 호출 수를 제한하고 리소스의 과다 사용을 방지합니다.

환경별 한도

모든 프로젝트는   샌드박스   환경에서 시작됩니다. 샌드박스는 SDM API 평가 및 개인 용도를 위해 설계되었으며 이에 따라 제한이 제한됩니다.   상업 개발  과 같이 사용자층이 넓은 환경에는 한도가 다릅니다.

샌드박스 사용자 한도

샌드박스의 개발자 계정은 모든 프로젝트의 5개 구조에서 25명의 사용자로 제한됩니다. 계정당 프로젝트는 3개로 제한됩니다.

구조는 각각 5명의 사용자로 제한되므로 5개 구조 모두 5개의 사용자가 최대 5명일 때만 사용자 한도에 도달합니다. 프로젝트를 소유하는 개발자 계정은 구조의 사용자 한도 5명에 포함되지 않습니다.

반대로 프로젝트에 5개 구조에 걸쳐 15명의 사용자가 있는 경우 구조 한도에 이미 도달했으므로 추가 사용자는 기존 5개 구조에만 추가할 수 있습니다.

샌드박스 비율 제한

샌드박스는 3가지 수준에서 비율이 제한됩니다. 달리 명시되지 않는 한, 제한은 분당 쿼리 수 (QPM)로 설정됩니다.

API 수준

API 호출은 프로젝트 및 사용자별로 제한됩니다. 개별 메서드에 대한 자세한 내용은 API 참조를 확인하세요.

API 메서드 비율 제한
devices.executeCommand 10 QPM
devices.get 10 QPM
devices.list 5 QPM
structures.get 5 QPM
structures.list 5 QPM
structures.rooms.get 5 QPM
structures.rooms.list 5 QPM

명령어 수준

각 trait 명령어 (devices.executeCommand)는 기기 및 사용자당 프로젝트당 5QPM으로 제한됩니다.

즉, 프로젝트에 각각 2대의 기기를 가진 사용자가 2명인 경우 (총 4대의 기기) 4개의 기기 각각에 대해 동일한 명령어를 1분에 5번 호출할 수 있습니다.

하지만 프로젝트에 총 6대의 기기마다 각각 3대의 기기를 가진 사용자 2명이 있는 경우 6개의 기기 각각에 대해 동일한 명령어를 1분에 5번 호출할 수 없습니다. 프로젝트 사용자의 devices.executeCommand API 수준 비율 제한이 10QPM일 때 각 사용자에 대해 15QPM이 됩니다.

기기 인스턴스 수준

또한 기기 인스턴스 수준 제한은 기기 배터리 보호를 위해 프로젝트와 명령어 (devices.executeCommand) 전체에 구현됩니다. 이러한 한도는 QPM 및 시간당 쿼리 (QPH) 수준 모두에 적용되며 getlist API 메서드에는 적용되지 않습니다.

예를 들어 프로젝트 A와 프로젝트 B가 모두 동일한 기기인 기기 A에 액세스한다고 가정해 보겠습니다 (사용자가 동일한 기기를 사용하는 두 개의 상용 통합을 승인했을 수 있음). 프로젝트 A가 1분 이내에 기기 A에 4개의 명령어를 전송한 경우 프로젝트 B는 기기 인스턴스 수준 비율 제한에 도달하기 전까지 1분 동안 기기 A에 명령어 1개만 전송할 수 있습니다. 이때 두 프로젝트에서 기기 A로 보내는 명령어는 기기 A에 대한 첫 번째 명령어에서 시작된 분까지 제한됩니다.

아래 목록에 없는 기기 유형에는 기기 인스턴스 수준 비율 제한이 없는 것입니다.

기기 유형 기기 인스턴스 비율 제한
온도 조절기 5QPM 또는 100 QPH
카메라 30QPM 또는 100 QPH
초인종 30QPM 또는 100 QPH

오류

이 가이드와 관련하여 다음과 같은 오류 코드가 반환될 수 있습니다.

오류 메시지 RPC 문제 해결
속도가 제한됨 RESOURCE_EXHAUSTED 개발자마다 호출할 수 있는 호출 수를 제한하는 할당량이 있습니다. 할당량을 초과하여 전화를 하면 비율 제한 메시지가 표시됩니다. 이 문제를 해결하려면 할당량이 만료된 후 호출을 다시 제출하세요.

API 오류 코드의 전체 목록은 API 오류 코드 참조를 확인하세요.