뒤끝만으로 서버 보상 검증 및 중복 지급 방지 구현이 가능한가요?

고객님의 문의에 답변하는 직원은 고객 여러분의 가족 중 한 사람일 수 있습니다.
고객의 언어폭력(비하, 조롱, 욕설, 협박, 성희롱 등)으로부터 직원을 보호하기 위해
관련 법에 따라 수사기관에 필요한 조치를 요구할 수 있으며, 형법에 의해 처벌 대상이 될 수 있습니다.

커뮤니티 이용 정책에 위배되는 게시물을 작성할 경우, 별도 안내 없이 게시물 삭제 또는 커뮤니티 이용이 제한될 수 있습니다.

문의 응대 : 평일 오전 10시 ~ 오후 6시
문의를 남기실 경우 다음 항목을 작성해 주세요.
정보가 부족하거나 응대시간 외 문의하는 경우 확인 및 답변이 지연될 수 있습니다.

  • 베이스/채팅/데이터베이스/월드 SDK 버전 : Base SDK 5.18.17 / Database SDK 0.0.18
  • 프로젝트명 : 오늘도 보스런
  • 스테이터스 코드 :
  • 에러 코드 :
  • 에러 메시지 :

뒤끝 개발팀을 통한 별도의 기술지원이 작업이 필요한 요청은 help@backnd.com 으로 문의해주시기 바랍니다.

현재 구조 : 신규 Database에 재화·경기 기록·보상 수령 이력을 저장하며, 클라이언트가 본인 데이터에 SELF 권한으로 기록합니다.
구현 목표 : 서버가 보상 조건과 지급량을 검증하고, 재화 증가와 수령 기록을 한 번에 확정하는 것입니다. 본인 계정 보상 처리이며, 이용자 간 재화 이동은 없습니다.

확인 부탁드릴 사항은 다음과 같습니다.

  1. 현재 펑션에서 신규 Database에 접근할 수 있나요? 가능하다면 필요한 SDK 버전과 공식 API를 알려주세요.
  2. 클라이언트의 지갑·수령 기록 직접 수정을 막고, 펑션에서만 변경하도록 설정할 수 있나요?
  3. 동시 요청이나 응답 유실 후 재요청에도 같은 보상이 한 번만 지급되도록 , 조건 검사·재화 지급·수령 기록을 원자적으로 처리하는 공식 방법이 있나요? 조건 불일치나 중복 시 전체가 롤백되어야 합니다.
  4. 클라이언트가 제출한 경기 결과를 보상 조건으로 사용하기 전에 서버에서 검증·확정하는 권장 구조가 있나요?
  5. 신규 Database에서 불가능하다면, 외부 서버 없이 뒤끝의 다른 기능으로 구현 가능한 대안 과 필요한 요금제를 안내 부탁드립니다.

가능하면 공식 문서나 최소 예제도 함께 부탁드립니다. 감사합니다.

안녕하세요 개발자님,
문의하신 내용 순차적으로 답변드립니다.

1. 펑션의 신규 Database 접근
현재 신규 Database는 뒤끝 펑션에서 사용하실 수 없습니다.
추후 업데이트를 통해 지원할 예정이며, 현재로서는 펑션에서 신규 Database에 접근하기 위한 공식 SDK 및 API는 제공되지 않는 점 양해 바랍니다.

2. 클라이언트의 직접 수정 차단 및 펑션 전용 쓰기
신규 Database에서는 테이블별 클라이언트 접근 권한을 설정할 수 있습니다.
해당 권한을 통해 클라이언트의 직접 데이터 수정을 제한하고, 서버 환경에서만 데이터를 변경하도록 구성할 수 있습니다.
다만 현재 뒤끝 펑션에서는 신규 Database 접근을 지원하지 않으므로, 클라이언트의 쓰기 권한을 차단한 후 펑션에서만 지갑과 수령 기록을 변경하는 구조는 구현할 수 없습니다.

3. 조건 검사·재화 지급·수령 기록의 원자적 처리
신규 Database에서는 Where() 를 통한 조건부 갱신과 여러 쓰기 작업을 하나의 원자적 단위로 처리하는 트랜잭션을 지원합니다.
트랜잭션은 최대 10개의 쓰기 작업을 지원하며, Inc() ·Dec() 를 통한 재화 증감도 가능합니다.
다만 다음 사항에 유의해야 합니다.

  • SELECT 를 통한 조회는 트랜잭션에 포함할 수 없습니다.
  • Where() 조건에 일치하는 데이터가 없으면 해당 작업의 영향받은 행 수가 0으로 처리될 수 있으며, 이것만으로 트랜잭션 전체가 롤백되는 것은 보장되지 않습니다.

따라서 조건 불일치나 중복 요청 시 전체 작업을 롤백하고, 동일한 보상이 한 번만 지급되도록 하려면 별도의 중복 방지 및 실패 처리 구조가 필요합니다.
또한 현재 펑션에서는 신규 Database를 사용할 수 없으므로, 문의하신 서버 검증과 보상 지급을 펑션에서 하나의 트랜잭션으로 처리하는 공식 구현 방법은 제공되지 않고 있습니다.

4. 경기 결과의 서버 검증 구조
뒤끝 펑션에서는 클라이언트가 전달한 경기 결과에 대해 개발자분께서 작성한 검증 로직을 실행할 수 있습니다.
다만 클라이언트가 제출한 결과값만으로 실제 경기 결과의 진위를 보장할 수는 없으므로, 서버에서 신뢰할 수 있는 경기 정보나 별도의 검증 기준이 필요합니다.

현재는 펑션에서 신규 Database에 저장된 경기 기록을 조회하거나 수정할 수 없으므로,
해당 데이터를 기반으로 경기 결과를 검증·확정하고 보상을 지급하는 구조는 지원되지 않습니다.

5. 외부 서버 없이 구현 가능한 대안 및 요금제
앞서 안내드린 것과 같이 현재 뒤끝 펑션과 신규 Database를 연계하여 요청하신 서버 검증, 재화 지급, 수령 기록 관리를 처리하는 기능은 지원되지 않습니다.
또한 문의하신 모든 요건을 충족하는 다른 뒤끝 기능 기반의 공식 대안은 현재 안내드리기 어렵습니다.

참고 문서

펑션의 데이터베이스 기능 지원에 대해서는 업데이트를 준비하고 있으나,
단기간 내에는 업데이트 예정이 없는 상황입니다. 빠르게 지원해드리지 못해 죄송합니다.