인프런 커뮤니티 질문&답변

MUNODevelop님의 프로필 이미지
MUNODevelop

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

cpu사용량 100%

해결된 질문

작성

·

464

·

수정됨

1

해당 코드를 프로젝트에 맞게 변경 해서 쓰려고 하고 있는데 초보라서 버그를 못 잡고 있습니다. aws에 올려놓으면 특정 시점에 dev, live서버 모두 cpu 100%에 도달하고 cpu크레딧도 다 사용합니다.

dev, live모두 같은 시점에 올라갈 때도 있고 아닐 때도 있습니다.

인터넷에서 떠돌면서 공격 포인트를 찾는 해킹봇 때문인가 싶어서 클라에서 바로 연결을 끝내는 try catch쪽이랑 한동안 유의미한 패킷을 보내지 않으면 끊어버리는 timeout도 넣었는데도 발생합니다.

wmi provider host문제는 아닌것 같아요 task manager기준으로는 서버 콘솔 프로그램이 많이 사용합니다.

앗 그리고 이렇게 질문하는 이유는 초창기 코드가 많지 않을 때도 cpu 100%를 찍었기 때문입니다.

코드는 강의 최종본을 변경해서 사용했습니다.

Jetbrains dotTrace 를 사용해서 프로파일링을 한 경우 다음과 같이 뜹니다.

답변 1

0

Rookiss님의 프로필 이미지
Rookiss
지식공유자

아주 당연한 얘기지만 위 내용으로는 저도 알 수 없습니다 ! ㅎㅎ;

컨텐츠 쪽 문제일 확률이 높은데,
뭘 어떻게 수정해서 작업하는지 모르기 때문에 확단하긴 힘들지만
이런 류의 문제가 발생하는 것은 십중팔구 Job 관련 부분일 것 같습니다.
예를 들면 Job을 시작했는데 거기서 또 다른 Job을 생성한다거나.
이런 느낌의 재귀적인 무엇인가가 생겨서 일감이 밀리는게 아닐까 싶네요.

버그를 잡기 위해선 파일 로그를 이것저것 심어보세요.
가령 Job 개수를 주기적으로 남긴다거나.. 이런 식으로요

MUNODevelop님의 프로필 이미지
MUNODevelop

작성한 질문수

질문하기