Skip to content

Latest commit

ย 

History

History
49 lines (36 loc) ยท 1.33 KB

File metadata and controls

49 lines (36 loc) ยท 1.33 KB

๐Ÿ”– Scrabler Server

Scrabler, ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ฉ”๋ชจ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์ง€์‹์„ ์ฒด๊ณ„ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ์ง€์‹ ๊ณต์œ  ํ”Œ๋žซํผ์˜ ๋ฐฑ์—”๋“œ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.

๐Ÿ“š ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

  • ๊ฐœ๋ฐœ ๊ธฐ๊ฐ„: 2024.01 ~ 2024.05
  • ๋ฐฐํฌ URL: https://scrabler.com (ํ์‡„)

๐Ÿ›  ์‹œ์Šคํ…œ ์•„ํ‚คํ…์ฒ˜

image

๐Ÿ”ง ๊ธฐ์ˆ  ์Šคํƒ

Backend

  • Framework: Spring Boot
  • Security: Spring Security + JWT
  • Database: MySQL(RDS)
  • Cache: Redis(ElasticCache)
  • Documentation: Swagger

DevOps

  • Cloud: AWS (EC2, RDS, S3, ElasticCache, ...)
  • CI/CD: Jenkins -> Github Actions
  • Container: Docker, Jib

๐Ÿš€ ์ฃผ์š” ๊ธฐ๋Šฅ

1. ์ธ์ฆ/์ธ๊ฐ€

  • JWT ๊ธฐ๋ฐ˜ ํ† ํฐ ์ธ์ฆ
  • OAuth 2.0 ์†Œ์…œ ๋กœ๊ทธ์ธ (Google)
  • Spring Security ๊ธฐ๋ฐ˜ ๋ฆฌ์†Œ์Šค ์ ‘๊ทผ ์ œ์–ด

2. ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ

  • Redis pub/sub ๊ตฌ์กฐ๋ฅผ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ
  • SSE(Server-Sent Events)๋ฅผ ํ†ตํ•œ ํด๋ผ์ด์–ธํŠธ ์ „์†ก
  • ๋Œ“๊ธ€, ์ข‹์•„์š” ๋“ฑ ์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ ์•Œ๋ฆผ

3. ํŒŒ์ผ ๊ด€๋ฆฌ

  • S3๋ฅผ ํ™œ์šฉํ•œ ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ ๋ฐ ์ฒจ๋ถ€ํŒŒ์ผ ๊ด€๋ฆฌ
  • CloudFront CDN์„ ํ†ตํ•œ ์ •์  ๋ฆฌ์†Œ์Šค ์ œ๊ณต

4. API ๊ธฐ๋Šฅ

  • ํฌ์ŠคํŠธ CRUD
  • ๋Œ“๊ธ€ ๋ฐ ๋‹ต๊ธ€
  • ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ๊ด€๋ฆฌ
  • ํŒ”๋กœ์šฐ/ํŒ”๋กœ์ž‰
  • ์ง€์‹ ๋‚˜๋ฌด(Knowledge Tree) ๊ด€๋ฆฌ