https://github.com/minseokangq/msa-study
[MSA] With Spring Cloud
https://github.com/minseokangq/msa-study
msa spring-cloud springboot springboot3 springboot333
Last synced: 2 months ago
JSON representation
[MSA] With Spring Cloud
- Host: GitHub
- URL: https://github.com/minseokangq/msa-study
- Owner: MinseoKangQ
- Created: 2024-08-31T06:40:30.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-10-19T14:17:10.000Z (8 months ago)
- Last Synced: 2025-02-10T22:44:20.899Z (4 months ago)
- Topics: msa, spring-cloud, springboot, springboot3, springboot333
- Language: Java
- Homepage:
- Size: 165 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## ๐ Spring Cloud๋ก ๊ฐ๋ฐํ๋ ๋ง์ดํฌ๋ก์๋น์ค ์ ํ๋ฆฌ์ผ์ด์ (MSA)
### โจ ์์ฝ
๊ตฌ์ฑ ์์
์ญํ
์ค๋ช
๐ Git Repository
์์ค ๊ด๋ฆฌ ๋ฐ Profile ๊ด๋ฆฌ
๋ชจ๋ ์์ค ์ฝ๋์ ์ค์ ํ์ผ์ Git ์ ์ฅ์์์ ๊ด๋ฆฌํ๋ค. ํ๊ฒฝ๋ณ ์ค์ (Profile) ์ ๋ณด ๋ํ ์ ์ฅ์์์ ๋ฒ์ ๊ด๋ฆฌ๋๋ฉฐ, Config Server์์ ์ด๋ฅผ ์ฐธ์กฐํ๋ค.
๐ง Config Server
์ค์ ๊ด๋ฆฌ ๋ฐ ํ๋กํ์ผ ์ ๋ณด ์ ๊ณต
Git ์ ์ฅ์์ ๋ฑ๋ก๋ ํ๋กํ์ผ ์ ๋ณด ๋ฐ ์ค์ ์ ๋ณด๋ฅผ ์ค์์์ ๊ด๋ฆฌํ๊ณ ์ ๊ณตํ๋ค. ๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๋ ์ด ์๋ฒ๋ก๋ถํฐ ํ์ํ ์ค์ ์ ๋ณด๋ฅผ ๊ฐ์ ธ์์ ์ฌ์ฉํ๋ค.
๐ Eureka Server
๋ง์ดํฌ๋ก์๋น์ค ๋ฑ๋ก ๋ฐ ๊ฒ์
๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๊ฐ ์์ ์ ๋ฑ๋กํ๊ณ , ๋ค๋ฅธ ์๋น์ค์ ์์น๋ฅผ ๊ฒ์ํ ์ ์๋ ๋ ์ง์คํธ๋ฆฌ ์ญํ ์ ํ๋ค. ์ด๋ฅผ ํตํด ์๋น์ค ๊ฐ์ ๋์ ํ์ฅ๊ณผ ํต์ ์ด ๊ฐ๋ฅํด์ง๋ค.
๐ช API Gateway Server
๋ถํ ๋ถ์ฐ ๋ฐ ์๋น์ค ๋ผ์ฐํ
ํด๋ผ์ด์ธํธ ์์ฒญ์ ์ ์ ํ ๋ง์ดํฌ๋ก์๋น์ค๋ก ๋ผ์ฐํ ํ๋ฉฐ, ๋ถํ ๋ถ์ฐ, ์ธ์ฆ, ์๋ ์ ํ ๋ฑ์ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค. ๋ชจ๋ ์ธ๋ถ ์์ฒญ์ API Gateway๋ฅผ ํตํด ์ฒ๋ฆฌ๋๋ค.
๐ Microservices
์ฌ์ฉ์, ์ฃผ๋ฌธ, ์นดํ๋ก๊ทธ ์๋น์ค ๊ด๋ฆฌ
USER-SERVICE: ์ฌ์ฉ์ ๊ด๋ฆฌ์ ๊ด๋ จ๋ ๊ธฐ๋ฅ์ ๋ด๋น
ORDER-SERVICE: ์ฃผ๋ฌธ ๊ด๋ฆฌ์ ๊ด๋ จ๋ ๊ธฐ๋ฅ์ ๋ด๋น
CATALOG-SERVICE: ์ํ ์นดํ๋ก๊ทธ์ ๊ด๋ จ๋ ๊ธฐ๋ฅ์ ๋ด๋น
๐จ Queuing System
๋ง์ดํฌ๋ก์๋น์ค ๊ฐ ๋ฉ์์ง ๋ฐ์ ๋ฐ ๊ตฌ๋ ๊ด๋ฆฌ
๋ง์ดํฌ๋ก์๋น์ค ๊ฐ์ ๋ฉ์์ง ์ ๋ฌ์ ๊ด๋ฆฌํ๋ค. ์๋น์ค ๊ฐ์ ๋น๋๊ธฐ์ ์ผ๋ก ๋ฉ์์ง๋ฅผ ์ฃผ๊ณ ๋ฐ์ผ๋ฉฐ, ์ด๋ก ์ธํด ์๋น์ค์ ๋ ๋ฆฝ์ฑ์ด ๋ณด์ฅ๋๊ณ ํ์ฅ์ฑ์ด ํฅ์๋๋ค.
### ๐ก ๊ฐ๋ฐ ํ๊ฒฝ (๊ณตํต)
- ์ด์์ฒด์ : MacOS M1
- ์ธ์ด : Java
- ํ์ : Gradle - Groovy
- JDK : 17
- Java : 17
- SpringBoot : 3.3.3
### โ๏ธ discovery-service
- Port : 8761
- Dependencies : Spring Cloud Discovery์ Eureka Server
### โ๏ธ user-service
- Port : Random
- Dependencies
- Spring Cloud Discovery์ Eureka Discovery Client
- Spring Boot DevTools
- Lombok
- Spring Web
### โ๏ธ first-service, second-service
- first-service port : 8081
- second-service port : 8082
- Dependencies
- Lombok
- Spring Web
- Eureka Discovery Client
### โ๏ธ apigateway-service
- Port : 8000
- Dependencies
- Lombok
- DevTools
- Eureka Discovery Client
- Spring Cloud Routing์ Gateway
- netty ๊ด๋ จ ์์กด์ฑ (MacOS M1 ์ค๋ฅ ํด๊ฒฐ ๋ชฉ์ )