π μλΉμ€ λ§ν¬: https://say-cheese.me
| μ°λ€ν | μ£Όμ λΉ |
|---|---|
backend |
backend |
[Swagger] π§ μΉμ΄μ΄μ¦ API λͺ μΈμ
-
Language & Framework
- Spring Boot 3.5.6
- Java 21
- JPA
-
Database & Cache
- MySQL
- Redis
-
CI/CD & Deployment
- GitHub Actions + Docker
- μ½λ νΈμ β μλ λΉλ β ν μ€νΈ β Docker μ΄λ―Έμ§ μμ± β λ°°ν¬κΉμ§ μλν
- 컨ν μ΄λ κΈ°λ°μΌλ‘ νκ²½ μΌκ΄μ± ν보 λ° λ¬΄μ€λ¨ λ°°ν¬ κ°λ₯
- μ΄μ νκ²½μ λ§μΆ Blue-Green λ°©μ ꡬν
- GitHub Actions + Docker
-
Monitoring & Logging
- Promtail : μλ² λ‘κ·Έλ₯Ό μμ§νμ¬ μ€μ μ§μ€ν λ‘κΉ κ΅¬μ±
- Loki : λΉμ© μ΅μ νλ λ‘κ·Έ μ μ₯μλ‘ λλ λ‘κ·Έ μ²λ¦¬μ μ ν©
- Grafana : λμ보λλ₯Ό ν΅ν΄ μλ² μνΒ·λ‘κ·ΈΒ·μ§ν μ€μκ° μκ°ν
- Prometheus : μλ²/μ ν리μΌμ΄μ λ©νΈλ¦ μμ§ λ° Alert κΈ°λ° λͺ¨λν°λ§ ꡬν
src
βββ main
βββ java
βββ com.cheeeese
βββ album # πΈ μ¨λ² λλ©μΈ
βββ photo # πΌοΈ μ¬μ§ λλ©μΈ
βββ cheese4cut # ποΈ μΉμ¦λ€μ»· λλ©μΈ
βββ user # π€ μ¬μ©μ λλ©μΈ
βββ auth # π μΈμ¦ / μΈκ°
βββ oauth2 # π μμ
λ‘κ·ΈμΈ(OAuth2)
β βββ application # μλΉμ€ / μ μ€μΌμ΄μ€
β βββ domain # μν°ν° / λΉμ¦λμ€ κ·μΉ
β βββ dto # μμ²Β·μλ΅ DTO
β βββ exception # μμΈ
β βββ infrastructure # JPA / μΈλΆ μ°λ
β βββ presentation # 컨νΈλ‘€λ¬ / API
β
βββ global # π μ μ μ€μ / μ νΈ / AOP / κ³΅ν΅ μμΈ
βββ CheeeeseApplication.java # π λ©μΈ μ€ν νμΌ#μ΄μ λ²νΈ νκ·Έ: μ»€λ° λ©μμ§ ννλ‘ μμ±
e.g. #1 feat: μΉ΄μΉ΄μ€ λ‘κ·ΈμΈ κ΅¬ν
| Type | λ΄μ© |
|---|---|
feat |
μλ‘μ΄ κΈ°λ₯ ꡬν |
chore |
λΆμμ μΈ μ½λ μμ λ° κΈ°ν λ³κ²½μ¬ν |
docs |
λ¬Έμ μΆκ° λ° μμ , μμ |
fix |
λ²κ·Έ μμ |
hotfix |
μλΉμ€ μ₯μ λ± κΈ΄κΈ μ΄μ μμ |
test |
ν μ€νΈ μ½λ μΆκ° λ° μμ , μμ |
refactor |
μ½λ 리ν©ν λ§ |
style |
μ½λ ν¬λ§·ν , μΈλ―Έμ½λ‘ λλ½ λ± κΈ°λ₯ λ³κ²½ μλ μ€νμΌ μμ |
deploy |
λ°°ν¬ κ΄λ ¨ μμ (CI/CD, μλ² μ€μ , λ°°ν¬ μ€ν¬λ¦½νΈ λ±) |
