- 베이스/채팅/데이터베이스/월드 SDK 버전 : 뒤끝베이스 Unity SDK 5.15.0 — Backend.dll 5.15.0.0
- 프로젝트명 : Panda_Restaurant
안녕하세요 직원 뽑기 기능을 개발하고 있습니다
Unity에서 Backend.dll 5.15.0.0을 사용 중이며, GameData 테이블은 private / 스키마 미정의 상태입니다. 현재 저장은 UpdateV2를 사용하고 있습니다.
뽑기에 사용한 다이아와 획득 직원, 중복 보상 토큰을 GameData의 같은 행에 함께 저장하려고 합니다. 이때 자동 저장과 뽑기 저장이 겹치거나, 네트워크 문제로 요청을 다시 보내는 상황을 어떻게 처리해야 할지 확인하고 싶습니다.
- 같은 데이터에 수정 요청이 동시에 들어오는 경우
revision 같은 버전값을 두고, “현재 값이 7일 때만 결과를 저장하면서 8로 변경”하는 방식을 생각하고 있습니다.
동일한 행에 이 조건으로 두 요청이 동시에 들어오면, 서버에서 조건 확인과 수정을 한 번에 처리해 하나만 성공하고 나머지는 실패하도록 보장되나요?
GameData.Update의 Where 조건으로 가능한지, TransactionWriteV2 안의 SetUpdate를 사용해야 하는지도 궁금합니다. 조건이 맞지 않을 때 반환되는 오류도 함께 알려주시면 감사하겠습니다.
- 서버에는 저장됐지만 앱에서 응답을 받지 못한 경우
뽑기마다 requestId를 만들고 결과와 함께 저장한 뒤, 응답을 받지 못하면 해당 기록을 다시 조회하는 방식을 생각하고 있습니다.
이때 조회한 값이 최신 저장 결과라고 볼 수 있나요? 기록이 조회되지 않으면 아직 처리되지 않은 요청으로 판단해도 되는지, 아니면 별도의 재조회 절차가 필요한지 궁금합니다.
같은 요청이 두 번 반영되지 않도록 지원하는 기능이나 권장 방식이 있다면 함께 안내 부탁드립니다.
현재 SDK 버전에서 지원되지 않는 부분이 있다면, 사용할 수 있는 API와 필요한 SDK 버전도 알려주시면 감사하겠습니다.
감사합니다.