포탑의 공격 우선순위와 병종 시스템 개선 (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 메시지 유실에 대비한 후처리로 사용자 경험 개선사실 난관은 '메시지의 유실을 어떻게 인지하는가..
게임 서비스에 대한 취약점 모의해킹 이벤트
·
project/resistance
게임 서비스에 대한 모의해킹 이벤트기존 resistance 프로젝트를 kubernetes로 배포하면서 모의해킹 이벤트를 소소하게 준비했다.음 사실 kubernetes로 서비스를 배포해서 운영하는데 테스터들이 필요했다.​동아리에서 가볍게 참여할 인원을 모집했는데, 외부 인원까지 합쳐서 20명 가량 모여서 모의해킹을 진행했다.​그리고 명세서나 취약점 보고 양식을 노션으로 배포해서 이벤트를 진행했다.​게임도 원래 모바일 게임인데 WebGL로 포팅해서 가볍게(가볍지 않았다.) 웹으로 배포해서 진행했다. 모바일에서도 열리긴 하던데.. 솔직히 해상도 안맞고 게임하기 불편한 부분이 좀 보였다.​애초에 개발 단계에서 어떤 취약점도 막지 않았다. jwt와 Vault 라이브러리로 비밀번호 암호화하는 정도?ssh/tls 설..
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..
환율 변동과 환전 시스템 구현 (Redis 캐싱으로 성능 개선)
·
project/resistance
새로 추가한 시스템은 환율 시스템​게임중에 얻는 리소스 아이템중에 뭐 청나라에서 유입된 마재은이나 달러, 파운드화를 환전하는 시스템을 구현했음.​은전을 사용하면 사라지면서 폭죽과 함께 이쁘게 얼마 환전했는지 알려줌. 근데 웹서버가 닫혀있는 상태면 환전 자체가 되지 않음...​위 사진은 웹서버에서의 관리자 페이지. 실시간으로 환율을 통제하고 확인함ㅇㅇ 각 재화마다 다른 변동비를 가지고 있으며 정각을 기준으로 매일마다 크거나 작게 변동이 생김.​실시간으로 화폐 환율을 볼 수 있는 패널을 제공해서 보고 비싼 녀석 팔 수 있도록 의도했슴컴맹이라 이쁜 이펙트랑 이런거 스샷 못찍어서 그냥 로그창 보여주는걸로 만족ㅠㅠㅠ​​나중에는 은화를 불법으로 찍어내는 등 근대경제사에 있어서 흥미로운 조선의 혐성질에 대해서 이야기..
마녀의 탑 출시
·
project/Witch's Tower
홍보나 광고같은 퍼블리싱쪽 알아보느라 내부 테스트를 먼저 거치고 업데이트를 조금 진행했었다. ​기술적으로 어려울 것도 없었고, 한달 남짓한 휴가 기간중에 출시까지 해봤다는 의의로 남겨뒀다. ​ 마녀의 탑 - Witch's Tower서비스 출시까지의 개발 프로세스를 경험하기 위해 군 휴가중 개발한 게임 프로젝트프로젝트명 : 마녀의 탑장르 : 액션엔진 : Unity3d​ 구현한 내용로그라이크 게임 플레이Google Admob 리워드형 광고 기능사용되는 게임 데이터는 기기 내에 저장​PlayStore 링크 - 우선 난 아이폰이라 못한다https://play.google.com/store/apps/details?id=com.nams.witchsTower 구글 정책 변경으로 개발자 업데이트를 진행해야했는데, 안해..