a-happy-dev-day / yanawa-server

Rival Matching Services Server
0 stars 1 forks source link

[Refactoring] 확장성을 위한 하드웨어 아키텍처 고려 #37

Open this-is-spear opened 1 year ago

this-is-spear commented 1 year ago

현재 아키텍처

현재 아키텍처는 WAS 한 대에서 동작합니다. 부하를 견디기 위해서 로드 밸런서를 추가해 서버를 증설할 수 있지만, 사용량이 적은 기능도 확장되어 불필요한 자원의 낭비가 발생할 것으로 예상됩니다.

확장하게 될 경우 불필요한 장비도 확장되어 자원 낭비 발생 예상

요구되는 아키텍처

현재는 모듈을 분리해 서버를 더 가용할만큼의 부하가 발생하지 않습니다. 그렇기에 부하 분산 가능한 아키텍처로 바로 변환할 수 있도록 웹 애플리케이션 서비스를 리팩토링합니다.

  1. 웹 서버는 로드 밸런서의 기능을 합니다.
  2. 모듈은 Facade를 통해 호출합니다.
  3. 모듈마다 의존되지 않아야 합니다.
  4. global 모듈은 웹 서버에서 관리합니다.
  5. 모듈간의 통신 프로토콜은 REST API 입니다.

image