🖥️ 프로젝트 개요
런처 관련 클라이언트와 서버 간의 소켓 통신 인터페이스 개발
소켓 서버
STOMP 서버, API와 통신하며 필요한 정보를 받아 클라이언트에게 전달
로컬에 저장된 설정 값을 관리하며 필요 시 클라이언트에게 전달
클라이언트
각 클라이언트 서비스에서 필요한 정보가 있을 때 소켓 서버에 이를 요청하는 이벤트 전달
클라이언트 간의 이벤트 전달이 필요할 때에도 소켓 서버를 통하여 전달
👩🏻💻 기여한 부분
C++ Boost
소켓 서버
서버 측의 소켓 통신 인터페이스 구현
신 기능 개발에 필요한 새로운 소켓 통신 인터페이스 추가
브로드캐스트 과정에서의 클라이언트 별 예외처리
서버 내부 작동에 대한 개발 및 유지보수에 참여
메신저 메세지 관련 STOMP 서버와의 연결 관리
HTTP API 호출을 통한 플랫폼 로그인 프로세스의 에러 상황에 대한 세부 예외 처리
로컬 Config 파일로 관리할 값 추가 및 수정
가독성과 유지보수성이 높은 코드를 작성하기 위해 **
Modern C++
**을 적극적으로 활용
런처 관련 클라이언트 서비스
C#
,
Typescript
,
C++
의 여러 환경에서의 클라이언트 측 소켓 통신 인터페이스 구현
타 부서와의 협업을 통한 인터페이스 조율
통신 오류 디버깅 및 신뢰성 강화
새로운 기능 개발 시, 통신 이벤트 과정의 서버와 클라이언트 양 측에서의 상세 디버깅을 통해 신뢰성을 높임
패킷 변조 툴 Fiddler을 사용해 구체적인 오류 상황을 테스트
네트워크 오류, 토큰 기간 만료, 계정 불일치 등의 다양한 오류 상황 테스트를 위해 응답 패킷 변조를 통한 디버깅 및 예외 처리 구현
라이브 서비스 실무에서 다양한 상황에 대한 대응 경험
🛠️
사용 기술
C++
: Boost 라이브러리를 이용한 서버 구축
C#
Typescript
C++
: 각 클라이언트에서 해당 언어 별로 이벤트 핸들러 작성