MSA 프로젝트를 활용하여 물류 배송 시스템 구축, MSA의 복잡성을 이해하고, 팀원들과 함께 MSA를 구축하며 실무에서 발생할 수 있는 문제를 간접적으로 경험하고 해결해 보기
- Naver OpenAPI Client ID & Secret
- 기상청 예보 OpenAPI 사용신청 및 API Key 발급 (기상청 예보 OpenAPI)
- Gemini API Key 발급
- Slack App 생성
- 오늘의-날씨 채널 생성
- Incoming webhook 앱 추가
- Incoming webhook URL 복사
- PostgreSQL 설치 (5432 포트)
- Redis 설치 (6379 포트)
- 포트 : 19090
- 필요 환경변수 : X
- 포트 : 19091
- 필요 환경변수 : X
- 포트 : 19092
- 필요 환경변수 : X
- 포트 : 19093
- 필요 환경변수
naver_map_client_idnaver_map_client_secret
- 포트 : 19094
- 필요 환경변수
GEMINI_API_KEY
- 포트 : 19095
- 필요 환경변수 : X
- 포트 : 19096
- 필요 환경변수
WEATHER_SERVICE_KEYSLACK_URLGEMINI_API_KEY
- 포트 : 5432
- DB : postgres
- username : postgres
- pw : 1234
- 포트 : 6379
- username : default
- pw : systempass
- Gateway Multi Path 적용 X 이슈 - Gateway Predicate Multi Paths
- Multi Module 사용 간 의존성 - Multi Module 공통 모듈 Dependencies
- Spring Boot 3.3.3
- Spring Cloud
- JWT
- JPA
- Redis
- Spring Security
- PostgreSql
- Docker
- Swagger
- Slack
.
├── auth-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── authserver
│ │ ├── application
│ │ │ └── dtos
│ │ │ ├── DM
│ │ │ ├── auth
│ │ │ └── user
│ │ ├── config
│ │ ├── controller
│ │ └── domain
│ │ ├── DM
│ │ └── user
│ └── resources
├── chore-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── choreserver
│ │ ├── application
│ │ │ └── dtos
│ │ │ ├── slack
│ │ │ └── weather
│ │ ├── config
│ │ ├── controller
│ │ └── domain
│ │ └── slack
│ └── resources
├── common
│ └── src
│ └── main
│ └── java
│ └── com
│ └── sparta3tm
│ └── common
│ ├── config
│ ├── gemini
│ └── support
│ ├── error
│ └── response
├── company-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── companyserver
│ │ ├── application
│ │ │ └── dtos
│ │ │ ├── company
│ │ │ └── product
│ │ ├── config
│ │ ├── controller
│ │ ├── domain
│ │ │ ├── company
│ │ │ └── product
│ │ └── infrastructure
│ └── resources
├── eureka-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── eurekaserver
│ └── resources
├── gateway-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── gatewayserver
│ │ ├── config
│ │ ├── dto
│ │ └── filter
│ └── resources
├── hub-server
│ └── src
│ └── main
│ ├── java
│ │ └── com
│ │ └── sparta3tm
│ │ └── hubserver
│ │ ├── application
│ │ │ ├── dto
│ │ │ │ ├── hmi
│ │ │ │ │ ├── request
│ │ │ │ │ └── response
│ │ │ │ └── hub
│ │ │ │ ├── request
│ │ │ │ └── response
│ │ │ └── service
│ │ ├── domain
│ │ │ ├── entity
│ │ │ └── repository
│ │ ├── infrastructure
│ │ │ ├── client
│ │ │ │ └── dto
│ │ │ ├── config
│ │ │ ├── data
│ │ │ └── naver
│ │ │ ├── dto
│ │ │ └── service
│ │ └── presentation
│ │ ├── controller
│ │ └── handler
│ └── resources
└── order-server
└── src
└── main
├── java
│ └── com
│ └── sparta3tm
│ └── orderserver
│ ├── application
│ │ ├── dto
│ │ │ ├── request
│ │ │ │ ├── delivery
│ │ │ │ └── order
│ │ │ └── response
│ │ │ ├── delivery
│ │ │ └── order
│ │ └── service
│ ├── domain
│ │ ├── entity
│ │ │ ├── delivery
│ │ │ ├── delivery_route
│ │ │ └── order
│ │ └── repository
│ ├── infrastructure
│ │ └── client
│ │ └── dto
│ │ ├── company
│ │ └── hub
│ └── presentation
│ └── controller
└── resources

