메시지가 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 참고 문서를 확인하세요.
자바
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Java API 참고 문서를 참조하세요.
Node.js
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Node.js API 참고 문서를 참조하세요.
Python
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Python API 참고 문서를 참조하세요.
Ruby
이 샘플을 시도하기 전에 빠른 시작: 클라이언트 라이브러리 사용의 Ruby 설정 안내를 따르세요. 자세한 내용은 Pub/Sub Ruby API 참고 문서를 참조하세요.
다음 단계
구독에 구성할 수 있는 다른 전송 옵션에 대해 알아보기