Skip to content

on-7/marketgg-gateway

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

51 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Market GG Gateway

Market GG κ²Œμ΄νŠΈμ›¨μ΄λŠ” 각 μ„œλΉ„μŠ€ λ˜λŠ” 데이터와 μ ‘μ†ν•˜κ³  API ν˜ΈμΆœμ„ μœ„ν•œ 관리, λͺ¨λ‹ˆν„°λ§, 인증 및 일반 μ—‘μ„ΈμŠ€ μ œμ–΄λ₯Ό λ‹΄λ‹Ήν•˜λŠ” API 관리 μ‹œμŠ€ν…œμž…λ‹ˆλ‹€.

Motivation

μ—¬λŸ¬ ν΄λΌμ΄μ–ΈνŠΈκ°€ μ—¬λŸ¬ 개의 μ„œλ²„ μ„œλΉ„μŠ€λ₯Ό 각각 ν˜ΈμΆœν•˜κ²Œ λœλ‹€λ©΄ 맀우 λ³΅μž‘ν•œ 호좜 관계가 λ§Œλ“€μ–΄μ§‘λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ³΅μž‘μ„±μ„ ν†΅μ œν•˜κΈ° μœ„ν•œ λ°©λ²•μœΌλ‘œ μ„œλΉ„μŠ€ 단일 μ§„μž…μ μ„ λ§Œλ“€μ–΄ λ†“μ•˜μŠ΅λ‹ˆλ‹€. λ‹€λ₯Έ μœ ν˜•μ˜ ν΄λΌμ΄μ–ΈνŠΈμ—κ²Œ μ„œλ‘œ λ‹€λ₯Έ API 쑰합을 μ œκ³΅ν•  μˆ˜λ„ μžˆλŠ” ν™•μž₯성을 가지고, 각 μ„œλΉ„μŠ€μ— μ ‘κ·Όν•  λ•Œ ν•„μš”ν•œ 인증/인가 κΈ°λŠ₯을 ν•œ λ²ˆμ— μ²˜λ¦¬ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, μ •μƒμ μœΌλ‘œ λ™μž‘ν•˜λ˜ μ„œλΉ„μŠ€μ— λ¬Έμ œκ°€ 생겨 μ„œλΉ„μŠ€ μš”μ²­μ— λŒ€ν•œ 응닡 지연이 λ°œμƒν•˜λ©΄ 정상적인 λ‹€λ₯Έ μ„œλΉ„μŠ€λ‘œ μš”μ²­ 경둜λ₯Ό λ³€κ²½ν•˜λŠ” κΈ°λŠ₯을 μ œκ³΅ν•©λ‹ˆλ‹€.

Getting Started

./mvnw spring-boot:run

Features

  • Spring Cloud Gateway μ μš©ν•˜μ—¬ μš”μ²­ λΌμš°νŒ…
    • YAML 을 μ΄μš©ν•œ λΌμš°νŒ… μ„€μ •
  • Custom ν•„ν„°λ₯Ό μ μš©ν•˜μ—¬ μš”μ²­μ— λŒ€ν•œ μ‚¬μš©μž 인증/인가
  • μ›Ή μ„œλ²„(NGINX) 연동
    • 도메인 μ„€μ • 및 μ„œλΈŒ 도메인 μΆ”κ°€
    • Reverse Proxy μ„€μ •
    • λ³΄μ•ˆ 이슈 λŒ€μ‘μ„ μœ„ν•œ NGINX 버전 μˆ¨κΉ€ 처리
  • 각 λ§ˆμ΄ν¬λ‘œμ„œλΉ„μŠ€μ— λŒ€ν•œ URL Rewriting
  • κ²Œμ΄νŠΈμ›¨μ΄ CI/CD ν™˜κ²½ ꡬ성

Project Architecture

marketgg-architecture-v1-0-4

Tech Stack

Authentication

JWT

Build Tool

ApacheMaven

Database

Redis

DevOps

NHN Cloud GitHubActions SonarQube

Frameworks

SpringBoot SpringCloud Swagger

Languages

Java

Web Server

NGINX

Contributors

License

Market GG is released under version 2.0 of the Apache License.