/namo

Primary LanguageJava

Namo Server

banner

목차

-🛠️ 나모는 이런 기술을 사용했어요 - For Code - For Infra

🛠️ 나모는 이런 기술을 사용했어요

For Code

SpringBootspring_data_JPAspring_security

Gradle

junit5test_containersmockito

MySQLRedis

For Infra

Amazon Ec2

DockerGitHub Actions

Amazon S3Amazon RDSAmazon ElastiCache

Route 53Amazon ALBNginx

AWS IAMAWS Secrets Manager

Amazon CloudWatch

🔎 나모의 서버 구조

1️⃣ Service Code

System Architecture - Service-Logic

[ Facade 패턴을 통해 틀린 아키택쳐를 구현하고자 노력합니다. ]

  • 초록: 외부와 연결되는 레이어
  • 빨강: 비지니스 로직을 다루는 레이어
  • 노랑: 도메인 레이어

[ 참조의 방향은 항상 화살표 방향을 따릅니다. ]

  • 코드의 의존성에 규칙을 두어 코드의 결합도가 올라가지 않도록합니다.
  • 특히 Facade와 Converter의 사용을 통해 API 인터페이스와 내부 로직을 철저히 분리합니다.

2️⃣ Infrastructure Architecture

System Architecture - Infra

3️⃣ Multi-Module Architecture

System Architecture - Multi-Module

  • application: 모듈은 외부에 제공되는 API와 관련된 기능을 제공한다.
  • clients: 모듈은 프로젝트 외부 서비스의 API를 호출하는 기능을 제공한다.
  • storage: 모듈은 데이터베이스와 관련된 기능을 제공한다.
  • core: 다양한 모듈에서 공통적으로 사용되는 기능을 제공한다.
  • support: 모듈은 프로젝트에 독립적으로 사용될 수 있는 기능을 제공한다.

✍🏻 나모 서버 팀원들은 이렇게 작업해요

매실/김현재

루카/최선규

초코/김현지