버그 해결을 위한 모든 질문을 던져
0 votes
167 views
학교에서 팀 프로젝트로 실시간 멀티 게임을 만들고 있습니다.

언어는 java를 이용하고 클라이언트 라이브러리로는 lib gdx, 서버는 netty 서버로, nagle 기능을 끈 Tcp연결로 세션을 유지하고 있습니다.

여기부터 질문입니다.

서버와 클라이언트간 데이터를 주고 받을 때는 json형식으로 보내고 있고 문자열을 읽어서 json parser로 변환시킨 다음 사용을 하고 있습니다.

현재 여러명의 유저가 실시간으로 이동을 하는것 까지 구현을 했는데 정상정으로 데이터를 주고 받다가 1분~5분정도 있다가 JSON으로 파싱하는 과정에서 정상적인 문자열이 들어가는걸 확인 했는데 Null 에러가 떠서 예외처리로 처리를 하고 정상적으로 다시 다음 데이터를 처리하게 했습니다.

근데 한 번 에러가 나기 시작하면 그때부터 계속 같은 에러가 발생을 합니다.

그래서 실제 게임 서버에서는 클라이언트와 통신을 할 때 어떤 형식의 데이터 포멧을 써서 데이터를 안정적으로 처리할 수 있는지 궁금합니다.

아니면 json형식으로 사용 할때 권장하는 방법이 있는지도 알려주시면 감사하겠습니다.
asked (2 point) , 167 views

1 답변

+1 vote
json으로 하셔도 되고요 프로토 플랫 버퍼류도 사용합니다.

마법 소녀 네티가 오래된 소녀라 라이브러리 문제는 적을 듯 하고요

코드나 예외처리를 확인해 보시기 바랍니다.

tcp의 경우. 전송자가 몇 바이트를 보냈는지 알 수 없기때문에

처음 전송에 내가 보낼 바이트를 명시 하기도 합니다.

참고해 보세요 ^^;
answered (194 point)
ㅋㅋ 마법소녀 네티 깨알유머군요.
감사합니다! 플랫 버퍼라는게 있다는걸 알게됐네요. 근데 마법 소녀 네티는 뭔가요..?

버그 해결을 위해 도움을 구하고, 도움을 주세요. 우리는 그렇게 발전합니다.

throw bug 는 프로그래밍에 대한 전분야를 다룹니다. 질문,논의거리,팁,정보공유 모든 것이 가능합니다. 프로그래밍과 관련이 없는 내용은 환영받지 못합니다.

449 질문
598 answers
585 댓글
57,548 users