OCI Queue FAQ

개요

Oracle Cloud Infrastructure(OCI) Queue가 무엇인가요?

OCI Queue는 초당 수백만 건의 메시지를 수집할 수 있는 고가용성, 고출력 대기열 서비스입니다. 사용자는 Queue를 통해 메시지를 게시, 소비 및 삭제할 수 있고, 메시지의 가시성을 업데이트할 수 있습니다.

Queue 서비스가 커뮤니케이션에 사용하는 프로토콜은 무엇인가요?

OCI Queue는 RESTful API와 SDK, STOMP를 지원합니다.

strict ordering(FIFO 대기열) 기능은 언제 사용할 수 있나요?

Queue는 표준 대기열을 지원합니다(best-effort ordering). FIFO 대기열(strict ordering)은 향후 지원될 예정이며, 아직 정확한 시기는 정해지지 않았습니다. FIFO 대기열이 필요한 경우 OCI 계정 관리자에게 지원을 요청하거나 문의하시기 바랍니다.



서비스 제한

OCI Queue는 어떤 SLA를 제공하나요?

OCI Queue는 99.9% 업타임 SLA와 최대 7일간의 메시지 보관 기간을 제공합니다.

테넌시의 제한을 늘리려면 어떻게 해야 하나요?

지원 요청을 통해 제한을 늘릴 수 있습니다.

OCI Queue API 사용에는 제한이 없나요?

다음의 임계값이 초과되면 조절 매커니즘이 활성화됩니다:

매개변수 고객의 soft limit
처리량 조절 제한 대기열당 10MB/초 수신 및 10MB/초 데이터 송신(소프트)


개발

Queue 서비스 사용을 시작하려면 통합 개발 환경(IDE)을 어떻게 설정해야 하나요?

예제 코드는 Oracle DevRel GitHub repository에서 찾을 수 있습니다. 다음 단계를 통해 IDE를 직접 구성할 수도 있습니다.

  • 1. 새로운 프로젝트를 생성하세요.
  • 2. Maven을 사용 중이라면 pom.xml에 Oracle의 SDK를 참조할 수 있습니다.



  com.oracle.oci.sdk
  oci-java-sdk-queue
  3.2.0

    

SDK는 어떻게 사용해야 하나요?

일부 SDK 기능들이 OCI Queue용 공공 GitHub repositories에 포함된 예제에 설명되어 있습니다.

대기열 작성에 필요한 전체 API의 목록을 어디에서 찾을 수 있나요?

Oracle은 다음 API를 제공합니다:

대기열 관리 API

  • ListQueues
  • CreateQueue
  • GetQueue
  • UpdateQueue
  • DeleteQueue
  • ChangeCompartment
  • PurgeQueue
  • GetWorkRequest
  • ListWorkRequest
  • ListWorkRequestLogs
  • ListWorkRequestErrors

메시징 API

  • PutMessages
  • GetMessages
  • DeleteMessage(s)
  • UpdateMessage(s)
  • GetStats

API 오류 목록은 어디에서 찾을 수 있나요?

API 오류에 관한 자세한 내용은 설명서에서 확인할 수 있습니다.



실행

메시지를 삭제하는 도중에 이를 대기열로 푸시할 수 있나요?

삭제 호출은 일관적인 성격을 지닙니다. 다시 말해 삭제 호출이 요청되기 전에 게시된 모든 메시지가 삭제된다는 뜻입니다. 게다가 대기열이 삭제 상태일 때 게시된 메시지도 일부 삭제될 수 있습니다(삭제 주기 상태 세부 사항를 기준으로 '업데이트 상태'에 해당). 삭제 실행 중에 PutMessages 호출은 차단되지 않지만 메시지는 삭제될 수 있습니다.

삭제된 메시지를 GetMessages 호출로 복구할 수 없으며, 이 호출은 대기열 상태에 영향을 미치지 않습니다. 그러나 메시지 삭제 프로세스는 여전히 비동기적이며, 다소 시간이 걸릴 수 있습니다. 유효한 수신을 보유한 경우, 해당 시간 동안 삭제된 메시지의 업데이트 및 삭제 작업은 성공적으로 진행됩니다.

OCI Queue는 처리 후 메시지 자동 삭제 기능을 지원하나요?

아니요. 처리된 메시지를 성공적으로 삭제하기 위해서는 DeleteMessage API를 호출해야 합니다. 그렇지 않으면 해당 메시지는 대기열로 다시 돌아오며(가시성 시간 초과 후), 이후 진행되는 Get 요청 중에 돌아옵니다.