DB 처리관련 질문이 있습니다
301
9 asked
안녕하세요. 루키스님 강의를 몇번이나 돌려보는 학생입니다.
다름이 아니라 Room에서 Room으로 플레이어가 이동을 할때 진행중인 DBTransaction이 있다면 일반적으로 DBTransaction 처리 결과를 어떻게 전달하는지 궁금합니다. 현재 강의에서는 Room 이동이 없기에 그냥 기존 Room으로 Push해주는데, Room이동이 가능해서 플레이어가 이미 다른 Room으로 이동 했다면 생각할게 많아 질 것 같습니다.
단순 생각으로는 Player가 어떤 Room에 있는지 확인 후 해당 Room으로 DBTransaction 결과를 전달해 주면 될것 같긴한데 Player를 Room에서 찾아서 넣어주려는 순간에 또 다시 Player가 Room이동을 하면 결국 잘못된 Room으로 결과가 전달되는 것 같아서 어떻게 처리해야 할지가 머리가 복잡하네요
일반적인 처리 방식이나 괜찮은 방식이 있다면 언급 부탁드리겠습니다!
항상 감사드립니다~
Answer 1
0
단순 생각으로는 Player가 어떤 Room에 있는지 확인 후 해당 Room으로 DBTransaction 결과를 전달해 주면 될것 같긴한데 Player를 Room에서 찾아서 넣어주려는 순간에 또 다시 Player가 Room이동을 하면 결국 잘못된 Room으로 결과가 전달되는 것 같아서 어떻게 처리해야 할지가 머리가 복잡하네요
네 극단적인 상황이지만 위처럼 처리해도 충분하고, Job을 받은 Room에서 해당 플레이어가 없으면
또 다른 룸으로 토스하는 것도 방법입니다. (물론 Player는 빠르게 찾을 수 있는 수단이 마련되어야 함)
그 외 Actor 단위로 JobQueue를 배치하면 애당초 사라지는 문제이긴 합니다.
마우스 이벤트 처리방법(오브젝트간 인터렉션)
0
621
1
RecvArgs_Completed에서 lock을 안하는 이유
0
516
1
Entity framework 질문드립니다.
0
574
2
json 직렬화
1
287
1
mmo 와 pvp
0
533
2
github로 프로젝트를 push, pull할 때 질문
1
529
1
Iocp 서버 관련 질문드립니다.
0
327
1
서버 관련 질문
0
395
1
안녕하세요. 질문드립니다.
1
1507
2
이해한 것이 맞나 궁금합니다.
0
285
1
마이그레이션 파일이 이상합니다.
0
281
1
강의 마지막으로 질문 드립니다.
0
678
2
ItemDbId,구조 설계
0
264
1
MMO 서버 관리 질문 드립니다!
0
321
1
디비 정보 나누기
0
239
1
AccountDb 업데이트
0
306
1
콘솔창이 아니라 브라우저에서 실행
0
280
2
메모리 누수문제.
0
495
1
유니티에서 클라이언트 빌드후 실행하면 맵 로드가 안됩니다.
0
362
1
외부 네트워크에서도 접속해서 게임하기
1
338
1
유니티클라에서 패킷을 계속 보내지 않고 lockstep이나 추측항법으로 동기화를 할 수 있을까요?
0
596
1
서버 메모리와 DB 저장 관련 질문
0
368
1
JsonUtility.FromJson 관해서 질문있습니다.
0
276
1
DB 쓰레드 질문입니다
0
267
1

