GS2-JobQueue API 레퍼런스

비동기 잡 큐

잡 큐 기능을 제공하는 서비스입니다.

잡 큐는 FIFO를 보장하는 큐이며, 결과 정합 처리에 사용할 수 있습니다.
결과 정합 처리란 API가 응답한 시점에는 처리 완료가 보장되지 않고, 일정 시간이 경과한 후 “결과적으로 의도한 상태가 되는” 방식입니다.

GS2에서는 보상 지급의 많은 부분을 결과 정합으로 처리합니다.
이는 보상을 지급할 때 보상을 관리하는 서버가 다운되어 있으면, 연쇄적으로 여러 서비스를 이용할 수 없게 되는 상황을 피하기 위함입니다.
보상 지급 처리를 잡 큐에 등록해 두면, 잡을 실행할 때 대상 서버를 이용할 수 없는 상태였더라도 잡의 재시도를 통해 결과 정합을 실현합니다.
재시도 횟수에는 최댓값을 지정할 수 있으며, 최댓값에 도달해도 성공하지 못한 경우 데드레터 잡이라는 실패한 잡이 쌓이는 모델에 저장됩니다.
데드레터 잡을 사용하면 처리에 실패한 잡에 대해 개별적으로 대응할 수 있습니다.

GS2-JobQueue의 잡은 자동으로 실행되지 않으며, 명시적으로 실행 API를 호출해야 합니다.
이는 잡의 반환값을 클라이언트 측에서 파악할 수 있도록 하기 위한 목적입니다.
예를 들어 GS2-Quest에서 퀘스트를 클리어한 후, 잡 큐에 보상을 지급하는 잡이 등록되며,
클라이언트는 잡 큐를 끝까지 실행함으로써 퀘스트를 통해 얻은 보상 지급 처리를 명시적으로 실행할 수 있습니다.
(결과 정합의 지연 처리가 완료되기를 기다릴 수 있습니다) 또한 해당 잡의 반환값을 참조함으로써 얻은 보상을 UI에 반영할 수 있습니다.

잡의 등록·실행은 1초에 3회까지만 가능합니다.


GS2-JobQueue SDK for Game Engine API 레퍼런스

게임 엔진용 GS2-JobQueue SDK의 모델 사양과 API 레퍼런스

GS2-JobQueue SDK API 레퍼런스

각종 프로그래밍 언어용 GS2-JobQueue SDK의 모델 사양과 API 레퍼런스

GS2-JobQueue Deploy/CDK 레퍼런스

GS2-Deploy의 스택을 생성할 때 사용하는 템플릿 포맷과, CDK를 이용한 각종 언어의 템플릿 출력 구현 예제

GS2-JobQueue 트랜잭션 액션

검증/소비/입수 각 트랜잭션 액션의 사양