포탑의 공격 우선순위와 병종 시스템 개선 (feat. Kafka 메시지 유실)
·
project/wargame
적진 않았지만 구현한 내용 : Redis로 구현한 스핀락 >> Redisson을 이용한 분산 락그냥 길게 적을 내용 아닌거 같아서 뻈다. 나중에 배포하면서 노드 수가 늘어나면 다시 포스팅 주제로 할애하겠음  nlohmann/json 라이브러리 도입을 통해 JSON 타입 처리 개선 GitHub - nlohmann/json: JSON for Modern C++JSON for Modern C++. Contribute to nlohmann/json development by creating an account on GitHub.github.com 난 그동안 뭘했던걸까... 그냥 라이브러리 쓰면 편한데...  Kafka 메시지 유실에 대비한 후처리로 사용자 경험 개선사실 난관은 '메시지의 유실을 어떻게 인지하는가..
Kubernetes 배포를 위한 클라우드 환경 구축
·
project/resistance
resistance 게임 프로젝트의 MSA 서버도 k8s 환경에서 배포하고자 한다.​내가 개발한 서비스를 실제 운영 환경에서 직접 관리하고 유지보수할 능력은 있어야 한다고 생각했기에, kubernetes에 대해 공부해봤다.​정확한 기간은 가격 정책 모니터링을 해야 알겠지만 목표는 일단 일주일동안 풀가동해서 모니터링하고 분석해보기​​​Terraform을 이용한 EKS 리소스 설치IaC(Infrastructure as Code)는 말 그대로 개발자들에게 친숙한 코드로 Infrastructure를 다루겠다는 소리다.​수동적인 프로세스로 관리하던 시스템과 인프라를 소프트웨어 개발과 유사한 방식으로 정의해서 쉽게 관리할 수 있다.이 IaC의 도구로, Terraform이 가장 널리 사용되고 있고 Terraform ..
웹서버 마이그레이션, MSA 설계하기
·
project/resistance
기존의 Flask로 간단하게 구현한 프로토타입 백엔드는 Http 통신으로 계정과 게임 데이터를 불러오거나, 환율 혹은 공지사항, 이벤트 등의 실시간 변동 사항을 적용하는 시스템을 구현했었다.그러나 점점 볼륨이 커지니까 관리하기가 어려웠고, 공부중인 기술과 아키텍처의 경험도 얻을 겸 MSA로 마이그레이션을 시도했다. k8s로 인기를 얻게된 MSA는 굉장히 어렵고 복잡한 구조로 이해하기 위한 제반 지식이 필요하지만, 나의 경험을 녹아내기 위해 필요한 개념들만 간략하게 소개하면서 진행하겠다.​​MSA(Mircro Service Architecture)란?https://kr.tmaxsoft.com/info/storyTView.do?seq=345작고, 독립적으로 배포가 가능한 각각의 기능을 수행하는 서비스(mir..