log-20190612

June 12, 2019

길었던 병특 복무가 5월에 끝나고, Tower Of Aden과 다른 작업들을 들어가기에 앞서 잠시 일본에 오게되었다.

후쿠오카에서 도쿄까지 대부분의 경로를 버스로 이동하는데, 오사카-도쿄 같은 장거리버스는 나같이 지나가는 풍경을 바라보는 것을 좋아하는 사람한테는 제격이다. 20시부터 다음날 07시 까지 이동하는 이 심야버스들은, 그저 앉아서 창문 밖을 바라보는 것 만으로도 시간을 감춰버리는 매력을 가지고 있다.

버스개발

버스에서 노트북을 하는게 익숙하다면 심야버스에서 창밖을 보며 개발하는거도 꽤나 재밌는 경험이다. 지스타 덕분에 부산행 버스에서 버스에서 노트북을 하는법을 체득해 버렸다.

버스에서 노트북을 만지작 거리던 중, 복무중에 복무가 끝나고 나서 하려 했던일들이 떠올라 간단하게 정리해 놓으려고 한다.

Formicary의 개발과 Akka.NET로 개발된 Tower of Aden 서버의 퍼포먼스 비교

Tower of Aden의 서버는 한창 경량 DI Container를 만들겠다고 GGM.Context를 만들었을 때 같이 만들었던 TCP서비스인 GGM.TCPService로 만들어져 있었다.

이후 자신의 모자람을 깨닿고 SuperSocket을 사용하다가, Elixir 의 액터패턴에 빠져버러서 Akka.NET으로 수정하였다.

Akka.NET은 “당시의 내 생각”에는 대전 카드게임 서버를 만드는데 최적으로 보였다. 유저의 세션들과 게임 룸들을 각각 하나의 액터로 구성하여 개발하면 의존성을 최소화 시키고, 각 액터의 메세지 처리의 동기를 보장하며, 필요에 따라 Persistence 액터로서 복구하거나 하는 등의 개발이 가능할거라 생각했었다. 실제로 처음 비동기에 대한 거한 삽질을 제외하곤 개발이 매우 쉬웠다.

하지만 Akka.NET을 사용하며 이해할수록 Akka가 바라보는 방향이 나와는 달랐고, (내 능력의 부족이겠지만) 강력하다 생각하는 기능들이 Tower of Aden에는 크게 사용되기 힘들다는 생각이 들게되었다. 또한, (아직 잘 모를때 해서 정확하진 않지만) 이전 서버보다 처리량이 줄은 것 같아 살짝 기분이 상했다.

그러다보니 점점 더 욕심이 났다, Tower of Aden에 보다 맞는 TCG 혹은 SRPG 에 맞는 구조의 서버를 만들고 싶어지게 되어, 없는 시간을 짜내서 Formicary(개미집)을 만들게 되었다.

(언제가 될지는 모르겠지만) Formicary가 어느정도 형태를 가지게 되면 Akka.NET로 만들어진 Tower of Aden서버의 퍼포먼스 비교를 해서 비교해볼 예정이다.

Tower of Aden의 매칭서버 개발

솔직하게 말하자면, 개발 초창기부터 너무 안일하게 생각해왔다.

AWS GameLift에 올려서 매칭 날먹해야지, OpenMatch같은 라이브러리가 나와서 날 행복하게 해주겠지 같은 생각으로 메칭을 요청한 순서대로 2명씩 게임을 잡아줘놓고 신경을 아예 꺼두고 살았다. 하지만 이번 BIC 지원 빌드 중 종종 게임이 안잡히는 현상을 확인했고, 이왕 고치는거 제대로 만들자 하면서 본격적으로 하려다가 생각보다 난이도가 있는 것을 알게되어 적잖이 당황했다.

다음 로드맵에 추가해놓고 본격적으로 파볼려고 벼르고있다.

Tower of Aden의 AMQPS 지원과 GGM.Message 수정

내가 GGM.Message를 너무 개떡같이 짜놔서 오히려 개발만 더 힘들어 지는거 같다. 특히 이번에 서버(프리티어) 성능의 한계때문에 RabbitMQAmazonMQ로 이전하려 할때 AMQPS가 지원이 안돼서 적용을 못한게 너무 충격적이었다. 결국 자꾸 터지는걸 견디지 못해 월 40$라는 거금을 내고 개발서버를 돌리고있다.

반드시 청산해야할 기술 부채이다. 사실 GGM.Message가 필요한거같지도 않다.. 제대로 수정해서 쓰기 좋게 만들거나 지우거나 해야겠다.

언어공부

이제 곧 학교로 돌아가게 되는데, 이중전공인 일본어가 매우 위험하다. 사실 일본에 와서 심각성을 더욱 느꼈다. 이대로 가면 학점을 전부 F로 도배할 것 같아 미리 공부하도록 해야겠다.

이와 별개로 평생 공부할 생각 없었던 영어회화도 공부해야 한다는 생각이 들었다. 사실 별견없고 같이 여행온 진우형이 영어로 말하는 모습보니 멋있더라.

아니 왜이렇게 많어..

사실 쓰기전부터 느낀거지만, 쓰기 불필요할정도로 할게 많다.. 그놈의 그림공부부터 운동까지.

위에 적은 것들 말고도 여러 문제와 흥밋거리들이 나를 자극한다. 요즘 살짝 게을러진거같은데 다시금 조이고 정진해야겠다.

새벽에 버스에서 일지를 쓰니까 뭔가 작가가 된 기분이 들고 새벽감성에 길게 써보게 됬는데.. 앞으론 이런짓 안하고 그냥 작업이나해야겠다.


Written by GoodGoodMan