https://github.com/gamegongDE/rusty-ws-server
이번에 작은 게임 프로젝트를 진행하게 되었는데,
브롤스타즈와 비슷한 모바일 게임을 만들어나가게 되었다.
얼마 전에 접한 Rust로 코딩하는게 너무 경험이 좋았어서,
이번에 게임 서버 또한 Rust로 코딩을 해 보았다.
게임 서버같은 경우 C++로 짰다면 런타임 에러의 두려움이 꽤 컸을 텐데,
Rust로 짜게 되니, 컴파일까지의 과정이 좀 어려워지기는 했지만..
그런 런타임 두려움은 싹 사라져서 너무나 좋았다.
tokio라고 가장 유명한 비동기 io 프레임워크가 있기에,
해당 기능이 기반인 웹소켓 멀티스레드 게임서버이다.
웹소켓 기반이기에, 살짝 성능이 아쉬울 수는 있지만
메시지 직렬화와 역직렬화를 msgpack을 사용할 수도 있고
로직 스레드 1 + 네트워크 스레드 최대 16개인 멀티스레드 서버이다!