Skip to content

Latest commit

Β 

History

306 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DOKI - μ‹€μ‹œκ°„ 백화점 νŒμ—…μŠ€ν† μ–΄ μ˜ˆμ•½ ν”Œλž«νΌ πŸ“…

DOKIλŠ” 백화점 및 νŒμ—…μŠ€ν† μ–΄ μš΄μ˜μžμ—κ²Œ ν†΅ν•©λœ 고객 데이터λ₯Ό,
μ˜ˆμ•½ μ΄μš©μžμ—κ²Œ μΌκ΄€λ˜κ³  μ•ˆμ •λœ μ˜ˆμ•½ κ²½ν—˜μ„ μ œκ³΅ν•˜κΈ° μœ„ν•œ ν”Œλž«νΌμž…λ‹ˆλ‹€.

Β  Β  Β 


πŸ’­ ν”„λ‘œμ νŠΈ 동기

DOKI ν”„λ‘œμ νŠΈλŠ” λ‹¨μˆœ κΈ°λŠ₯ κ΅¬ν˜„μ΄ μ•„λ‹Œ 도메인에 λŒ€ν•œ κΉŠμ€ 기술적 고찰의 ν•„μš”μ„±μœΌλ‘œλΆ€ν„° μΆœλ°œν–ˆμŠ΅λ‹ˆλ‹€.
μˆ˜λ§Žμ€ 도메인 쀑 'μ˜ˆμ•½' 도메인은, κ·Έ μ€‘μ—μ„œλ„ λ³΄νŽΈμ μ΄λ©΄μ„œ ν™•μž₯성이 큰 λ„λ©”μΈμž…λ‹ˆλ‹€.

μ˜ˆμ•½ λ„λ©”μΈμ—μ„œλŠ” 백화점 νŒμ—…μŠ€ν† μ–΄κ°€ 높은 μˆ˜μš”λ₯Ό 보이고 있으며, μ˜΄λ‹ˆμ±„λ„ λ§ˆμΌ€νŒ… μ „λž΅μ˜ ν•΅μ‹¬μœΌλ‘œ μ„±μž₯ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
ν•˜μ§€λ§Œ λ‹€μŒκ³Ό 같은 λ¬Έμ œκ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€.

  • 이용자: νŒμ—…μŠ€ν† μ–΄λ§ˆλ‹€ λ‹¬λΌμ§€λŠ” 비일관적 μ˜ˆμ•½ κ²½ν—˜
  • 운영자: 고객 데이터 톡합, λΆ„μ„μ˜ 어렀움

λ”°λΌμ„œ DOKI ν”„λ‘œμ νŠΈλŠ” μ˜ˆμ•½ 채널과 고객 데이터λ₯Ό ν†΅ν•©ν•˜μ—¬, μœ„ λ¬Έμ œλ“€μ„ ν•΄κ²°ν•˜κ³ μž ν•©λ‹ˆλ‹€.


πŸ“šοΈ 기술적 μ„±κ³Ό

λ³Έ ν”„λ‘œμ νŠΈλ₯Ό 톡해 μ•„λž˜μ™€ 같은 κ²½ν—˜κ³Ό 지식을 μŒ“μ•„κ°€κ³  μžˆμŠ΅λ‹ˆλ‹€.

μ‹œμŠ€ν…œ μ•ˆμ •μ„±

  • Kafka 기반 λ©”μ‹œμ§€ 큐λ₯Ό ν™œμš©ν•œ μˆœκ°„μ  μ˜ˆμ•½ νŠΈλž˜ν”½ λΆ€ν•˜ 처리
  • Pessimistic Lock을 μ μš©ν•΄ 20만 건 λ™μ‹œ μ˜ˆμ•½μ—μ„œ 데이터 무결성 확보
  • λ©€ν‹°λͺ¨λ“ˆ μ•„ν‚€ν…μ²˜ 기반의 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ„œλ²„ ꡬ좕 κ²½ν—˜
  • AWS ν΄λΌμš°λ“œ ν™˜κ²½ 기반의 CI/CD 무쀑단 배포 인프라 ꡬ좕

ν”„λ‘œμ„ΈμŠ€ μ΅œμ ν™”

  • Elasticsearch 및 Redis 캐싱을 ν†΅ν•œ 쑰회/검색 응닡 속도 κ°œμ„ 
  • ELK μŠ€νƒ 기반의 둜그/health check μ‹œκ°ν™” μ‹œμŠ€ν…œ ꡬ좕 πŸ‘‰ μ—λŸ¬ 진단 μ‹œκ°„ 단좕
  • AWS Lambda 기반 이미지 μžλ™ μ΅œμ ν™” 및 CDN 배포 νŒŒμ΄ν”„λΌμΈ ꡬ좕 πŸ‘‰ λΉ„μš© μ ˆμ•½ 및 λ‘œλ”© 속도 ν–₯상

기타

  • SSE 기반 μ‹€μ‹œκ°„ μ˜ˆμ•½ ν˜„ν™© μ•Œλ¦Ό πŸ‘‰ μžλ™ λ·° μ—…λ°μ΄νŠΈ, μ‚¬μš©μž κ²½ν—˜ κ°œμ„ 
  • SSR λ°©μ‹μ˜ 운영자용 λ°±μ˜€ν”ΌμŠ€ κ΅¬ν˜„

⚑️ μ£Όμš” κΈ°λŠ₯ μ†Œκ°œ

[이용자] μ‹€μ‹œκ°„ νŒμ—…μŠ€ν† μ–΄ μ˜ˆμ•½

[운영자] μ‹€μ‹œκ°„ μ˜ˆμ•½ λ‚΄μ—­ 관리

[κ΄€λ¦¬μž] μ‹€μ‹œκ°„ 둜그/ν—¬μŠ€μ²΄ν¬ λͺ¨λ‹ˆν„°λ§


πŸ› οΈ κΈ°μˆ μŠ€νƒ 및 μ„ μ • 이유

Note

μ•„ν‚€ν…μ²˜ μ „λ°˜μ— 걸쳐 μ•ˆμ •μ„±, ν™•μž₯μ„±, 운영 νš¨μœ¨μ„±μ„ κ³ λ €ν•˜μ—¬ 기술 μŠ€νƒμ„ μ„ μ •ν–ˆμŠ΅λ‹ˆλ‹€.
μƒμ„Έν•œ μ„ μ • μ΄μœ λŠ” λΈ”λ‘œκ·Έ ν¬μŠ€νŠΈμ—μ„œ ν™•μΈν•˜μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€.

전체 μ•„ν‚€ν…μ²˜ 도식

κΈ°μˆ μŠ€νƒ λͺ©λ‘

μžμ„Ένžˆ 보기

μ• ν”Œλ¦¬μΌ€μ΄μ…˜

  • Spring Cloud API Gateway
  • Spring Cloud Service Discovery
  • Spring Cloud Eureka
  • Spring Logback
  • Spring JPA
  • Thymeleaf
  • Kafka
  • JWT

λ°μ΄ν„°λ² μ΄μŠ€

  • MySQL
  • Redis

검색 및 둜그 λͺ¨λ‹ˆν„°λ§

  • Elasticsearch
  • Logstash
  • Kibana

인프라

  • AWS Lambda
  • AWS ELB
  • AWS IAM
  • AWS Route53
  • AWS Cloudfront
  • AWS EC2
  • AWS RDS
  • AWS S3

DevOps

  • Docker Compose
  • GitHub Actions

ν…ŒμŠ€νŠΈ

  • JUnit
  • JMeter
  • Swagger
  • Postman

ν”„λ‘œμ νŠΈ 관리

  • Git
  • Trello
  • Slack
  • Figma

⚑️ νŠΈλŸ¬λΈ”μŠˆνŒ… 및 회고

ν”„λ‘œμ νŠΈ μ§„ν–‰ 쀑 λ§ˆμ£Όν–ˆλ˜ λ‹€μ–‘ν•œ 이슈의 ν•΄κ²° κ³Όμ •κ³Ό 생각듀을 기술 λΈ”λ‘œκ·Έμ—μ„œ λ§Œλ‚˜λ³΄μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€.

About

πŸ“… νŠΈλž˜ν”½ λΆ€ν•˜μ™€ μ„±λŠ₯ μ΅œμ ν™”λ₯Ό κ³ λ €ν•œ μ‹€μ‹œκ°„ 백화점 νŒμ—…μŠ€ν† μ–΄ μ˜ˆμ•½ ν”Œλž«νΌ

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages