본문 바로가기

Programming/개인 프로젝트

[중고거래장터] Server Architecture

반응형

다른 사람들의 프로젝트 리포지토리를 보면 Server Architecture를 멋지게 만들어 놓은 것을 자주 볼 수 있습니다. 저는 그것이 부러웠습니다. 미적으로 멋있다는 것이 아니고 복잡한 설계를 할 수 있는 지식이 부러웠습니다. 

 

이번 프로젝트에서 제가 설계한 구조입니다.

처음부터 이렇게 설계하지 않았습니다. 아니, 처음에는 개발 환경 설정 및 구현 자체가 버거웠기 때문에 설계 작업 자체를 생각하지 못했습니다. 그래서 모든 작업이 끝나고 문서 작성을 하면서 "아, 내가 이렇게 구현했었구나?" 하는 느낌으로 앞에서 뒤로 천천히 톺아보면서 구조를 정의했습니다. 이 작업을 통해 느낀 점은, 처음부터 설계 방향을 잡고 구현했다면 작업 속도 및 결과물이 지금보다 더욱 좋았겠다는 것입니다. 설치 및 사용과는 별개로 빌드 및 배포 도구를 선정하는 것이 은근히 까다롭더군요. 지속 가능성을 염두에 두어야 하니까요.(사실 저는 별다른 생각 없이 그냥 사용했습니다.)

 

위의 서버 구조 이미지를 보면 하나의 서버에서 모든 작업을 처리하는 것을 볼 수 있습니다. 지금 상황에서 개선해야 할 방향이 무엇일까 생각해보았습니다.

 

  • 서버를 여러개 두고 대량의 요청에 대한 서버 부하 관리 환경 구성.
  • 서버가 하나이기 때문에 하나의 서버가 의도치 않게 종료되어 버리면 서비스 이용이 불가능하기 때문에 관련 해결 방안 모색.
  • 무중단 배포 환경 구성.

의 내용을 보완해야 하지 않을까 생각합니다. 계속 고민하고, 직접 구현해보면서 무엇이 최선일까 생각해 보겠습니다.

반응형