메시지가 pull 구독자에게 전달되면 구독자는 확인 기한 내에 메시지를 처리하고 확인해야 합니다. 그렇지 않으면 구독자가 확인 기한을 수정하는 호출을 사용하여 기한을 연장해야 합니다.
Pub/Sub 높은 수준의 클라이언트 라이브러리는 아직 확인되지 않은 메시지의 기한을 자동으로 연장하는 기능으로 임대 관리를 제공합니다. 기본적으로 클라이언트 라이브러리는 정기적인 modifyAckDeadline 요청을 실행하여 기한을 1시간으로 연장할 수 있습니다. Python, Go, Java, .Net의 상위 수준 클라이언트 라이브러리는 확인 지연의 99번째 백분위수를 사용하여 각 연장의 길이를 결정합니다.
임대 관리를 사용하면 구독 수준 속성을 구성하는 것보다 메시지의 확인 기한을 더 세부적으로 제어할 수 있습니다. 구독 수준의 확인 기한만 사용하는 경우 낮은 값과 높은 값의 균형을 유지해야 합니다. 값이 낮으면 중복 가능성이 높아지고 값이 높으면 실패한 메시지의 재전송이 지연됩니다. 특히 메시지별 예상 처리 시간이 크게 다를 때 적절한 값을 결정하기는 쉽지 않습니다.
확인 기한을 비롯한 구독 속성에 관한 자세한 내용은 구독 속성을 참조하세요.
임대 관리 구성
상위 수준 클라이언트 라이브러리에서 다음 속성을 구성하여 임대 관리를 제어할 수 있습니다.
최대 확인 연장 기간.
modify acknowledgment deadline
요청을 사용하여 메시지 확인 기한을 연장할 수 있는 최대 기간입니다. 이 속성을 사용하면 구독자 클라이언트가 메시지를 처리해야 하는 시간을 결정할 수 있습니다.각 확인 연장 프로그램의 최대 기간 각
modify acknowledgment deadline
요청의 확인 기한을 연장할 수 있는 최대 기간입니다. 이 속성을 사용하면 Pub/Sub가 메시지를 재전송하는 데 걸리는 시간을 정의할 수 있습니다. 메시지를 처리하는 첫 번째 구독자가 비정상 종료되거나 비정상 상태가 되어 더 이상modify acknowledgment deadline
요청을 전송할 수 없으면 재전송이 발생합니다.각 확인 연장 프로그램의 최소 기간. 각
modify acknowledgment deadline
요청의 확인 기한을 연장할 수 있는 최소 기간입니다. 이 속성을 사용하면 메시지가 재전송되기 전에 경과해야 하는 최소 시간을 지정할 수 있습니다.
1회만 전송을 사용 설정하지 않는 한 확인 기한 준수가 보장되지 않습니다.
확인 기한 수동 관리
단항 가져오기 또는 하위 수준 클라이언트 라이브러리를 사용할 때 메시지의 만료 및 재전송을 방지하려면 modify acknowledgment deadline
요청을 사용하여 확인 기한을 연장하세요. 단항 풀을 사용할 때 임대 관리를 제공하는 Go 및 C++ 상위 수준 클라이언트 라이브러리는 예외입니다. 임대 관리를 사용한 단항 가져오기의 경우 다음 샘플을 참조하세요.
C#
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 C# 설정 안내를 따르세요. 자세한 내용은 Pub/Sub C# API 참조 문서를 확인하세요.
자바
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Java 설정 안내를 따르세요. 자세한 내용은 Pub/Sub 자바 API 참조 문서를 참조하세요.
Node.js
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Node.js API 참조 문서를 참조하세요.
Python
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Python API 참조 문서를 참조하세요.
Ruby
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Ruby 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Ruby API 참고 문서를 참조하세요.
다음 단계
구독에 구성할 수 있는 다른 전송 옵션에 대해 알아보기