본문 바로가기

내일배움캠프30

[TIL] 24.11.20 트래블슈팅 1. 문제빵야 게임 프로젝트를 진행중에 prepareNotification을 클라이언트에 보낼때 문제가 발생했다.정상적으로 데이터가 잘가서 room의state가 prepare로 바뀌어서 클라이언트가 굳어지는 작동을 확인했는데,캐릭터와 역할을 분배해주지 않는 문제가 있었다. 2. 원인 파악서버에 무작정 로그를 박아서 봤지만 서버에서는 원인을 찾을 수 없었다. 그러다 클라이언트쪽에 로그를 찍으며 확인해보니 FindIndex부분에서 참조할수 없는 값이라는 에러를 확인할 수 있었다. 3. 그렇게 찾아내어도 state는 정상작동했기에 서버쪽에서 보내는 데이터에는 문제가 없을줄 알았다.하지만 createResponse단계에서 encode전의 데이터와 decode후의 데이터를 비교해보니 인코드 전후로 characte.. 2024. 11. 20.
[TIL] 24.11.01 (트래블 슈팅) 1. 개요레이턴시 매니저를 추가하기전까지는 클라이언트 종료가 잘 반영되어 User가 게임에서 제거 되었다.2. 트러블슈팅2.1 배경 (아키텍처 다이어그램)2.2 발단레이턴시 매니저를 추가하기전까지는 클라이언트 종료시 게임상에서 캐릭터가 사라져서 없어지고 직전 위치를 데이터베이스에 저장했는데, 레이턴시 매니저를 추가하고 나니까 게임상에서 캐릭터가 사라지지도 않고 데이터베이스에 직전 위치를 저장하지도 않게 되었다. 2.3 전개원인이 뭔가 싶어서 바꾸기전 코드와 바꾼후의 코드를 살펴보고 레이턴시 매니저를 사용하는 부분들을 주석처리하니 캐릭터가 사라지고 직전 위치를 저장하는 기능이 다시 되살아나서 레이턴시 매니저를 사용하는 것이 문제임을 추정하고 있다. 2.4 위기아무리 봐도 어떤게 문제가 되어서 말썽을 일으키.. 2024. 11. 1.
[TIL] 24.10.07 트래블슈팅 트래블슈팅1. 개요서버에서 getGameAsset으로 사용중인 데이터 테이블을 클라이언트 부분에서도 사용해서 stageId 나 Item점수 등을 활용하고 싶다.2. 트러블슈팅2.1 배경 (아키텍처 다이어그램)2.2 발단서버에서는 getGameAsset으로 데이터 테이블을 사용하는 방법을 알고 있는데 클라이언트에서도 getGameAsset을 사용하면 서버와 클라이언트의 분리가 제대로 되지 않는 것 같은 생각이 들었다. 2.3 전개그래서 다른 방식으로 클라이언트가 데이터테이블을 알게 할 수 없을까 찾아보았다. 2.4 위기도무지 방법이 떠오르지 않아서 튜터님께 질문을 하게 되었다.2.5 절정클라이언트가 public 폴더의 내용을 알고 있는것은 서버를 실행할때app.use(express.static("publi.. 2024. 10. 7.
[TIL] 24.10.04 서버관련으로 모의 면접 진행해주셔서 모의면접을 봤다.미리 질문까지 뽑아 주신거여서 준비는 어렵지 않았다. https://waddak.tistory.com/152https://waddak.tistory.com/153https://waddak.tistory.com/154  이 3개의 질문에서 추가 질문까지 나오는 모의 면접 이었다. 미리 질문을 알려주고 하는 면접임에도 불구하고 완벽하게 대답하진 못한것 같다.이런거 까지 물어봐? 싶은 것들까지 세세히 물어보니 완벽하게 알지 않는 이상 답변하기 힘들 것 같다는 생각을 했다. 내가 제대로 질문에 답변하지 못한 내용은 다음과 같다. 1. 동적라우팅 프로토콜의 종류에는 어떤것들이 있고 그에대한 설명. 2. DNS조회할때 DNS서버의 종류가 여러개가 있는데 어떠한 것.. 2024. 10. 4.