โœจ ์นœ๊ตฌ ์ดˆ๋Œ€ํ•˜๊ณ  ํ‹ฐ์ผ“ 10์žฅ ๋ฐ›๊ธฐ! โœจ์ด๋ฒคํŠธ
์ทจ์—… ์ •๋ณด
์•ฝ 4์‹œ๊ฐ„ ์ „

CJ์˜ฌ๋ฆฌ๋ธŒ์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž ์ง๋ฌด ๋ถ„์„

2025๋…„ ์ตœ์‹  ๊ธฐ์ˆ  ์Šคํƒ๊ณผ ์ทจ์—… ์ „๋žต

์žกํ”„๋žฉ
5๋ถ„ ์ฝ๊ธฐ

CJ์˜ฌ๋ฆฌ๋ธŒ์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋กœ ์ทจ์—…ํ•˜๊ณ  ์‹ถ์€๋ฐ, ์‹ค์ œ๋กœ ์–ด๋–ค ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€ ๊ถ๊ธˆํ•˜์‹ ๊ฐ€์š”? ๋งค์ถœ 4์กฐ 7,900์–ต์›, ์•ฑ MAU 950๋งŒ๋ช…์„ ๋’ท๋ฐ›์นจํ•˜๋Š” ์˜ฌ๋ฆฌ๋ธŒ์˜์˜ ๊ธฐ์ˆ  ์Šคํƒ์„ ์™„์ „ ๋ถ„์„ํ•ด ๋“œ๋ฆด๊ฒŒ์š”.

์ด ๊ธ€์—์„œ๋Š” ์˜ฌ๋ฆฌ๋ธŒ์˜ ๊ณต์‹ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ์™€ ์ปจํผ๋Ÿฐ์Šค ๋ฐœํ‘œ ์ž๋ฃŒ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ, ์‹ค์ œ ์—…๋ฌด์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์ˆ ๋“ค๊ณผ ์กฐ์ง ๋ฌธํ™”๊นŒ์ง€ ์ƒ์„ธํžˆ ์ •๋ฆฌํ–ˆ์–ด์š”. ๋‹จ์ˆœํ•œ ๊ธฐ์ˆ  ๋‚˜์—ด์ด ์•„๋‹Œ, ์ทจ์—… ์ค€๋น„์— ์‹ค์งˆ์ ์œผ๋กœ ๋„์›€์ด ๋˜๋Š” ๋ถ„์„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์˜ฌ๋ฆฌ๋ธŒ์˜ ๊ธฐ์ˆ  ์Šคํƒ ๊ฐœ์š”

๐Ÿ—๏ธ ๊ธฐ์ˆ  ์•„ํ‚คํ…์ฒ˜ ํ˜„ํ™ฉ

  • ์•„ํ‚คํ…์ฒ˜ ์ „ํ™˜: Monolithic โ†’ MSA (์ง„ํ–‰ ์ค‘)
  • ์ฃผ๋ ฅ ์–ธ์–ด: Kotlin + Spring Boot (์ฝ”ํ”„๋ง)
  • ํด๋ผ์šฐ๋“œ: AWS + Oracle Cloud + Google Cloud
  • ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ: ์ผ์ผ ์ฒœ๋งŒ ๊ฑด ์ด์ƒ ์žฌ๊ณ  ๋ณ€๊ฒฝ ๋ฐ์ดํ„ฐ
  • ๋ชจ๋‹ˆํ„ฐ๋ง: Datadog (450๊ฐœ ์ด์ƒ ๋Œ€์‹œ๋ณด๋“œ)

์˜ฌ๋ฆฌ๋ธŒ์˜์€ ๋ชจ๋“  ์œ ์ €์—๊ฒŒ ์ตœ์ ์˜ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ๊ธฐ์ˆ ์ ์œผ๋กœ ํฐ ๋ณ€ํ™”๋ฅผ ๊ฒช๊ณ  ์žˆ์–ด์š”. ํŠนํžˆ MSA ์ „ํ™˜๊ณผ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋žต์„ ํ†ตํ•ด ํ™•์žฅ์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ๋™์‹œ์— ์ถ”๊ตฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์™œ ์ด๋Ÿฐ ๊ธฐ์ˆ  ์Šคํƒ์„ ์„ ํƒํ–ˆ์„๊นŒ?

์˜ฌ๋ฆฌ๋ธŒ์˜์˜ ๊ธฐ์ˆ  ์„ ํƒ์—๋Š” ๋ช…ํ™•ํ•œ ์ด์œ ๊ฐ€ ์žˆ์–ด์š”:

  • ํ™•์žฅ์„ฑ: ๊ธ‰์„ฑ์žฅํ•˜๋Š” ์‚ฌ์šฉ์ž ์ˆ˜ (MAU 950๋งŒ๋ช…)์— ๋Œ€์‘
  • ์•ˆ์ •์„ฑ: 24์‹œ๊ฐ„ ์ค‘๋‹จ ์—†๋Š” ์„œ๋น„์Šค ์šด์˜ ํ•„์š”
  • ์„ฑ๋Šฅ: ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ (์žฌ๊ณ  ๋ณ€๊ฒฝ ๋“ฑ)
  • ๊ธ€๋กœ๋ฒŒ ๋Œ€์‘: ๋ฏธ๊ตญ, ์ผ๋ณธ ์ง„์ถœ์— ๋”ฐ๋ฅธ ์ธํ”„๋ผ ์š”๊ตฌ

๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

๋ฉ”์ธ ๊ธฐ์ˆ  ์Šคํƒ: ์ฝ”ํ”„๋ง (Kotlin + Spring Boot)

๐ŸŽฏ ํ•ต์‹ฌ ํŠน์ง•

์˜ฌ๋ฆฌ๋ธŒ์˜ ๋Œ€๋ถ€๋ถ„ ํŒ€์—์„œ๋Š” ์ฝ”ํ”„๋ง(Kotlin + Spring Boot) ํ˜•ํƒœ์˜ ์Šค์ผˆ๋ ˆํ†ค ํ”„๋กœ์ ํŠธ๋ฅผ ํ‘œ์ค€์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์–ด์š”. ์˜คํ”„๋ผ์ธ ํŒ€์˜ ๊ฒฝ์šฐ ํŒ€์›๋“ค์˜ ๊ธฐ์ˆ  ์ˆ™๋ จ๋„๋ฅผ ๊ณ ๋ คํ•ด ์žํ”„๋ง(Java + Spring Boot)๋„ ๋ณ‘ํ–‰ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์Šค์ผˆ๋ ˆํ†ค ํ”„๋กœ์ ํŠธ ๊ตฌ์„ฑ

๐Ÿ“ฆ ๊ธฐ๋ณธ ํฌํ•จ ๊ธฐ๋Šฅ

  • JPA: ORM ๊ธฐ๋ณธ ์„ค์ •
  • MyBatis: ๋ณต์žกํ•œ ์ฟผ๋ฆฌ ์ฒ˜๋ฆฌ
  • Swagger: API ๋ฌธ์„œํ™”
  • Test Code: ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ ๊ตฌ์ถ•
  • DB Multi Datasource: ๋‹ค์ค‘ DB ์—ฐ๊ฒฐ ์„ค์ •
  • ์˜ˆ์‹œ API: ์‹ ๊ทœ ๊ฐœ๋ฐœ์ž ์˜จ๋ณด๋”ฉ์šฉ

ํ”„๋ก ํŠธ์—”๋“œ ์—ฐ๋™

ํ”„๋ก ํŠธ์—”๋“œ๋Š” Next.js๋ฅผ ํ‘œ์ค€์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉฐ, Back-end/Front-end ๋ถ„๋ฆฌ ํ”„๋กœ์ ํŠธ๋กœ ์šด์˜ํ•˜๊ณ  ์žˆ์–ด์š”. ์ด๋Š” ํŒ€๋ณ„ ๋…๋ฆฝ์ ์ธ ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”„ ์–ธ์–ด ์„ ํƒ ๊ธฐ์ค€

ํŒ€ ์œ ํ˜• ์ฃผ ์‚ฌ์šฉ ์–ธ์–ด ์„ ํƒ ์ด์œ 
์‹ ๊ทœ ํ”„๋กœ์ ํŠธ Kotlin + Spring Boot ์ƒ์‚ฐ์„ฑ, ์•ˆ์ •์„ฑ, ์ตœ์‹  ๊ธฐ๋Šฅ
๋ ˆ๊ฑฐ์‹œ ์œ ์ง€๋ณด์ˆ˜ Java + Spring Boot ๊ธฐ์กด ์ฝ”๋“œ ํ˜ธํ™˜์„ฑ
์˜คํ”„๋ผ์ธ ํŒ€ Java + Spring Boot ํŒ€์› ์ˆ™๋ จ๋„ ๊ณ ๋ ค

ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ

๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋žต

์˜ฌ๋ฆฌ๋ธŒ์˜์€ ๋‹จ์ผ ํด๋ผ์šฐ๋“œ๊ฐ€ ์•„๋‹Œ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋žต์„ ์‚ฌ์šฉํ•ด์š”. ๊ฐ ํด๋ผ์šฐ๋“œ์˜ ๊ฐ•์ ์„ ํ™œ์šฉํ•ด ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ๋Œ์–ด๋‚ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ”ถ AWS (Amazon Web Services)

  • ECS Fargate: ์ปจํ…Œ์ด๋„ˆ ์„œ๋น„์Šค ์šด์˜
  • MSK: Apache Kafka ๊ด€๋ฆฌํ˜• ์„œ๋น„์Šค
  • OpenSearch: ๊ฒ€์ƒ‰ ๋ฐ ๋กœ๊ทธ ๋ถ„์„
  • Bedrock + Claude 3.5: AI ์ด๋ฏธ์ง€ ๊ฒ€์ˆ˜ ์‹œ์Šคํ…œ

์„ฑ๊ณผ: ์ด๋ฏธ์ง€ ๊ฒ€์ˆ˜ 5์ดˆ ์ด๋‚ด ์ฒ˜๋ฆฌ, 95% ์ •ํ™•๋„

๐Ÿ”ด Oracle Cloud Infrastructure

  • Oracle DB ์„œ๋น„์Šค: ํ•ต์‹ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
  • Scale Up/Out: ์œ ์—ฐํ•œ ์ž์› ํ™•์žฅ

์„ฑ๊ณผ: Heavy Query 50-200ms โ†’ 3-4ms (50๋ฐฐ ๊ฐœ์„ )

๐Ÿ”ต Google Cloud Platform

  • BigQuery: ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ ๋ถ„์„ ํ”Œ๋žซํผ
  • ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ: ์‹ค์‹œ๊ฐ„ ๋ถ„์„

์„ฑ๊ณผ: ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘/์ด๋™ ์‹œ๊ฐ„ 55% ๋‹จ์ถ•

๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ: AWS MSK

๐Ÿ“Š MSK ์„ฑ๋Šฅ ์ง€ํ‘œ

  • Peak Throughput: 605MB/s
  • P99 Latency: 5ms
  • ๋ฉ”์‹œ์ง€ ์œ ์ง€: ๊ธฐ๋ณธ 7์ผ
  • ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ: ๋ณด์žฅ
  • ๋น„๋™๊ธฐ ํ†ต์‹ : ์ง€์›

AI ๊ธฐ์ˆ  ๋„์ž…

๐Ÿค– AWS Bedrock + Claude 3.5 Sonnet

2024๋…„ 9์›” ๊ตฌ์ถ•ํ•œ ์ž๋™ ์ƒํ’ˆ ์ด๋ฏธ์ง€ ๊ฒ€์ˆ˜ ์‹œ์Šคํ…œ์ด ์ •๋ง ์ธ์ƒ์ ์ด์—์š”:

  • ์ฒ˜๋ฆฌ ์‹œ๊ฐ„: ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ๋ถ€ํ„ฐ ๊ฒ€์ˆ˜ ์™„๋ฃŒ๊นŒ์ง€ 5์ดˆ ์ด๋‚ด
  • ์ •ํ™•๋„: 95% ์ด์ƒ์˜ ๊ฐ€์ด๋“œ๋ผ์ธ ์ค€์ˆ˜ ์—ฌ๋ถ€ ํŒ๋‹จ
  • ํšจ์œจ์„ฑ: ๊ธฐ์กด ์ˆ˜๋™ ๊ฒ€์ˆ˜ ๋Œ€๋น„ ๋Œ€ํญ ๊ฐœ์„ 

MSA ์ „ํ™˜ ํ˜„ํ™ฉ

์™œ MSA๋กœ ์ „ํ™˜ํ•˜๊ณ  ์žˆ์„๊นŒ?

๐Ÿ—๏ธ Monolithic์˜ ํ•œ๊ณ„

  1. Scale-out ์–ด๋ ค์›€: ํŠน์ • ๋ถ€๋ถ„๋งŒ ํ™•์žฅํ•˜๊ธฐ ์–ด๋ ค์šด ๊ตฌ์กฐ
  2. ๊ตฌ์กฐ ํŒŒ์•… ์–ด๋ ค์›€: ์ „์ฒด ์‹œ์Šคํ…œ ์ดํ•ด๋„ ์ €ํ•˜
  3. ๋ฐฐํฌ ๋ฆฌ์Šคํฌ: ์ž‘์€ ๋ณ€๊ฒฝ๋„ ์ „์ฒด ์‹œ์Šคํ…œ ์žฌ๋ฐฐํฌ
  4. ๊ธฐ์ˆ  ์Šคํƒ ์ œ์•ฝ: ์ƒˆ๋กœ์šด ๊ธฐ์ˆ  ๋„์ž… ์–ด๋ ค์›€

์ „ํ™˜ ์™„๋ฃŒ ์˜์—ญ

2023๋…„ 10์›” ์˜จ๋ผ์ธ๋ชฐ Home ์˜์—ญ์ด ์‹ ๊ทœ MSA ์•„ํ‚คํ…์ฒ˜๋กœ ์ „ํ™˜ ์™„๋ฃŒ๋˜์—ˆ์–ด์š”. ์ด๋ฅผ ํ†ตํ•ด ๋†€๋ผ์šด ์„ฑ๊ณผ๋ฅผ ๊ฑฐ๋’€์Šต๋‹ˆ๋‹ค.

๐Ÿ“ˆ Home ์˜์—ญ MSA ์ „ํ™˜ ์„ฑ๊ณผ

  • ํ‰๊ท  ์‘๋‹ต ์†๋„: 99.5% ํ–ฅ์ƒ (6์›” ๋Œ€๋น„ 9์›”)
  • ์ตœ๋Œ€ ์‘๋‹ต ์†๋„: 99.8% ํ–ฅ์ƒ
  • ์‹œ์Šคํ…œ ์•ˆ์ •์„ฑ: ๋Œ€ํญ ๊ฐœ์„ 
  • ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ: ํŒ€๋ณ„ ๋…๋ฆฝ ๋ฐฐํฌ ๊ฐ€๋Šฅ

๋ฐ์ดํ„ฐ ์„œ๋น™ ์ „๋žต

๐ŸŽฏ 2-Tier ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ

Static Data

๋ชจ๋“  ์œ ์ €์—๊ฒŒ ๋™์ผํ•˜๊ฒŒ ์ œ๊ณต๋˜๋Š” ๋ฐ์ดํ„ฐ

  • ์บ์‹ฑ ๋ฐ์ดํ„ฐ ์กฐํšŒ ํ›„ ๋ฐ”๋กœ ์„œ๋น™
  • ๋น ๋ฅธ ์‘๋‹ต ์†๋„ ํ™•๋ณด
  • ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค ํšจ์œจ์  ์‚ฌ์šฉ
Personal Data

ํŠน์ • ์œ ์ €์—๊ฒŒ ์ฐจ๋ณ„ํ™”๋˜์–ด ์ œ๊ณต๋˜๋Š” ๋ฐ์ดํ„ฐ

  • ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ํฌํ•จ
  • ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ๊ฐ„ ๋””ํŽœ๋˜์‹œ ๊ณ ๋ ค
  • ๊ฐœ์ธํ™” ์„œ๋น„์Šค ์ œ๊ณต

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฐ ์Šคํ† ๋ฆฌ์ง€

๋‹ค์–‘ํ•œ DB ๊ธฐ์ˆ  ํ™œ์šฉ

์˜ฌ๋ฆฌ๋ธŒ์˜์€ ํด๋ฆฌ๊ธ€๋ž ํผ์‹œ์Šคํ„ด์Šค ์ „๋žต์„ ์‚ฌ์šฉํ•ด์š”. ๊ฐ ์šฉ๋„์— ์ตœ์ ํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์„ ํƒํ•ด์„œ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ›๏ธ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

Oracle Database (OCI)
  • ์šฉ๋„: ํ•ต์‹ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฐ์ดํ„ฐ
  • ์„ฑ๋Šฅ: Heavy Query 50-200ms โ†’ 3-4ms
  • ์žฅ์ : ์œ ์—ฐํ•œ Scale Up/Out

๐Ÿ“„ NoSQL - MongoDB

  • ์šฉ๋„: ์ „์‹œ ์˜์—ญ ์ฝ˜ํ…์ธ  ๊ด€๋ฆฌ
  • ํŠน์ง•: ์œ ๋™์ ์ธ ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ
  • ์ „๋žต: ๋ฐ์ดํ„ฐ ๋ฒ„์ „ํ™” ๊ด€๋ฆฌ

โšก ์บ์‹œ - Redis

  • ์šฉ๋„: ์ปค๋ฎค๋‹ˆํ‹ฐ ์„œ๋น„์Šค '์…”ํ„ฐ'
  • ํ™œ์šฉ: Sorted Set ๊ธฐ๋ฐ˜ ๋žญํ‚น
  • ์—ญํ• : ๊ณ ์† ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค

๋ฐ์ดํ„ฐ ์••์ถ• ์ตœ์ ํ™”

๐Ÿ—œ๏ธ Avro Format + AWS Glue Schema Registry

๋ฐ์ดํ„ฐ ํฌ๋งท ์šฉ๋Ÿ‰ (238๋งŒ ๊ฑด ๊ธฐ์ค€) ์••์ถ•๋ฅ 
JSON Format 12GB -
Avro Format 538MB 24๋ฐฐ ์••์ถ•

DevOps ๋ฐ ์šด์˜ ๋„๊ตฌ

CI/CD: TeamCity

๐Ÿ”ง TeamCity ์„ ํƒ ์ด์œ 

  • ํŽธ๋ฆฌํ•œ UI: ์ง๊ด€์ ์ธ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค
  • Kotlin Script: CI/CD ํŒŒ์ดํ”„๋ผ์ธ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•
  • Container ์นœํ™”์ : Docker ํ™˜๊ฒฝ ์ตœ์ ํ™”
  • ํด๋ผ์šฐ๋“œ ํ†ตํ•ฉ: ์ž๋™ํ™” ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์„ฑ

์ปจํ…Œ์ด๋„ˆ ์šด์˜

Docker + ECS Fargate ํ™˜๊ฒฝ์—์„œ ์„œ๋น„์Šค๋ฅผ ์šด์˜ํ•˜๊ณ  ์žˆ์–ด์š”. ์ด๋ฅผ ํ†ตํ•ด ํ™•์žฅ์„ฑ๊ณผ ๊ด€๋ฆฌ ํšจ์œจ์„ฑ์„ ๋™์‹œ์— ํ™•๋ณดํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋‹ˆํ„ฐ๋ง: Datadog

๐Ÿ“Š Datadog ํ™œ์šฉ ํ˜„ํ™ฉ

  • ๋Œ€์‹œ๋ณด๋“œ: 450๊ฐœ ์ด์ƒ ์šด์˜
  • ์ ์šฉ ๋ฒ”์œ„: ์˜จ๋ผ์ธ๋ชฐ๋ถ€ํ„ฐ ์˜คํ”„๋ผ์ธ ๋งค์žฅ๊นŒ์ง€
  • QA ํ™œ์šฉ: APM ๋กœ๊ทธ, ์„ฑ๋Šฅ ๋น„๊ต, ์ด์Šˆ ์ถ”์ 
  • AWS ์—ฐ๋™: MSK Prometheus ๋ฉ”ํŠธ๋ฆญ ์ˆ˜์ง‘

๐Ÿ” QA์—์„œ์˜ Datadog ํ™œ์šฉ

  • APM ๋กœ๊ทธ ํ™•์ธ: ์‹ค์‹œ๊ฐ„ ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง
  • ๊ฐ„ํ—์  ์ด์Šˆ ์ถ”์ : ์žฌํ˜„ํ•˜๊ธฐ ์–ด๋ ค์šด ๋ฒ„๊ทธ ๋ฐœ๊ฒฌ
  • ๋ฐฐํฌ ์ „ํ›„ ์„ฑ๋Šฅ ๋น„๊ต: ๋ฆด๋ฆฌ์Šค ์˜ํ–ฅ๋„ ๋ถ„์„
  • ์„œ๋น„์Šค ์•ˆ์ •์„ฑ ํ™•๋ณด: ํ’ˆ์งˆ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ ํ™œ์šฉ

์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€

์ •๋ง ๋†€๋ผ์šด ์„ฑ๊ณผ๋“ค์ด์—์š”

์˜ฌ๋ฆฌ๋ธŒ์˜์˜ ๊ธฐ์ˆ ํŒ€์ด ๋‹ฌ์„ฑํ•œ ์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€๋“ค์„ ๋ณด๋ฉด, ๊ธฐ์ˆ ์  ์—ญ๋Ÿ‰์ด ์–ผ๋งˆ๋‚˜ ๋›ฐ์–ด๋‚œ์ง€ ์•Œ ์ˆ˜ ์žˆ์–ด์š”.

๐Ÿš€ ์‘๋‹ต ์†๋„ ๊ฐœ์„ 

MSA ์ „ํ™˜ (Home ์˜์—ญ)

  • ํ‰๊ท  ์‘๋‹ต ์†๋„: 99.5% ํ–ฅ์ƒ
  • ์ตœ๋Œ€ ์‘๋‹ต ์†๋„: 99.8% ํ–ฅ์ƒ
  • ๊ธฐ๊ฐ„: 6์›” ๋Œ€๋น„ 9์›” (3๊ฐœ์›”)

โšก DB ์ฟผ๋ฆฌ ์„ฑ๋Šฅ

OCI ์ด๊ด€ + ํŠœ๋‹

  • Heavy Query: 50-200ms โ†’ 3-4ms
  • ๊ฐœ์„ ๋ฅ : ์•ฝ 50๋ฐฐ ํ–ฅ์ƒ
  • ๋ฐฉ๋ฒ•: ๋ฌผ๋ฆฌ DB โ†’ ํด๋ผ์šฐ๋“œ DB

๐Ÿ—œ๏ธ ๋ฐ์ดํ„ฐ ์••์ถ•

Avro Format ๋„์ž…

  • ์••์ถ•๋ฅ : JSON ๋Œ€๋น„ 24๋ฐฐ
  • ์šฉ๋Ÿ‰: 12GB โ†’ 538MB
  • ๋ฐ์ดํ„ฐ: 238๋งŒ ๊ฑด ๊ธฐ์ค€

๐Ÿ“ˆ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ

GCP BigQuery ๋„์ž…

  • ์ˆ˜์ง‘/์ด๋™ ์‹œ๊ฐ„: 55% ๋‹จ์ถ•
  • ๋ฒ”์œ„: ํ†ตํ•ฉ ๋ฐ์ดํ„ฐ ๋ถ„์„
  • ํšจ๊ณผ: ์‹ค์‹œ๊ฐ„ ์˜์‚ฌ๊ฒฐ์ • ๊ฐ€๋Šฅ

์กฐ์ง ๋ฌธํ™” ๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ

์Šค์ฟผ๋“œ ์กฐ์ง ๊ตฌ์„ฑ

์˜ฌ๋ฆฌ๋ธŒ์˜์€ ์Šค์ฟผ๋“œ ๋‹จ์œ„๋กœ ํŒ€์„ ๊ตฌ์„ฑํ•ด ์šด์˜ํ•˜๊ณ  ์žˆ์–ด์š”. ๊ฐ ์Šค์ฟผ๋“œ๋Š” ๋…๋ฆฝ์ ์ธ ์ฑ…์ž„๊ณผ ๊ถŒํ•œ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿช ์Šคํ† ์–ด์ „์‹œ ์Šค์ฟผ๋“œ

  • ๋ฉ”์ธ, ํ™ˆ, ์˜คํŠน ๋“ฑ GNB ์˜์—ญ
  • ์˜จ๋ผ์ธ๋ชฐ ์ „์‹œ ์„œ๋น„์Šค
  • ๊ณ ๊ฐ ๊ฒฝํ—˜ ์ตœ์ ํ™”

๐Ÿ“ฆ B2B ๋ฌผ๋ฅ˜ ์Šค์ฟผ๋“œ

  • ์˜คํ”„๋ผ์ธ ๋ฐœ์ฃผ ์‹œ์Šคํ…œ
  • ๋ฌผ๋ฅ˜ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ
  • MSA ์ „ํ™˜ ์ฃผ๋„

๐Ÿ“Š ์ธ๋ฒคํ† ๋ฆฌ ์Šค์ฟผ๋“œ

  • ์žฌ๊ณ  ๊ด€๋ฆฌ ์‹œ์Šคํ…œ
  • ์ผ์ผ ์ฒœ๋งŒ ๊ฑด ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ
  • ์‹ค์‹œ๊ฐ„ ์žฌ๊ณ  ๋™๊ธฐํ™”

์™ธ๋ถ€ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ฐธ์—ฌ

๐ŸŒŸ 2025๋…„ ์ฃผ์š” ํ™œ๋™

  • SpringCamp 2025: ๊ณจ๋“œ ํ›„์›์‚ฌ, ๋ฌผ๋ฅ˜ ์‹œ์Šคํ…œ ๊ฐœ์„ ๊ธฐ ๋ฐœํ‘œ
  • Let'Swift 2024: ํ”Œ๋ž˜ํ‹ฐ๋„˜ ํ›„์›, iOS ์ƒํƒœ๊ณ„ ํ™œ์„ฑํ™”
  • ๊ฐœ๋ฐœ์ž ์†Œํ†ต: ์•ฝ 500๋ช…์˜ ์™ธ๋ถ€ ๊ฐœ๋ฐœ์ž์™€ ๊ต๋ฅ˜

๋‚ด๋ถ€ ์›Œํฌ์ˆ ๋ฐ ๊ต์œก

๐ŸŽฏ 2024๋…„ ํ…Œํฌํ”Œ๋žซํผ์„ผํ„ฐ ์›Œํฌ์ˆ

  • ์ฐธ์—ฌ์ž: ํ…Œํฌํ”Œ๋žซํผ์„ผํ„ฐ ๊ตฌ์„ฑ์› ์ „์›
  • ํ”„๋กœ๊ทธ๋žจ: ์•„์ด๋””์–ดํ†ค ์ง„ํ–‰
  • ์ฃผ์ œ: ์˜ฌ๋ฆฌ๋ธŒ์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ๊ฐœ์„ 
  • ๋ชฉํ‘œ: ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ•ด๊ฒฐ์ฑ… ๋„์ถœ

ํ•„์ˆ˜ ์—ญ๋Ÿ‰ ๋ถ„์„

๊ธฐ์ˆ ์  ์—ญ๋Ÿ‰

๐ŸŽฏ ํ•„์ˆ˜ ๊ธฐ์ˆ  (Must Have)

  • Kotlin + Spring Boot: ์ฃผ๋ ฅ ๊ฐœ๋ฐœ ์Šคํƒ
  • JPA & MyBatis: ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๋ ˆ์ด์–ด
  • Docker: ์ปจํ…Œ์ด๋„ˆํ™” ํ•„์ˆ˜
  • AWS ๊ธฐ๋ณธ: ECS, MSK, OpenSearch ์ดํ•ด
  • MSA ์ดํ•ด: ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜ ๊ฒฝํ—˜

โญ ์šฐ๋Œ€ ๊ธฐ์ˆ  (Nice to Have)

  • Kafka: ๋Œ€์šฉ๋Ÿ‰ ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ ๊ฒฝํ—˜
  • MongoDB & Redis: NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ™œ์šฉ
  • Oracle Cloud: OCI ํ™˜๊ฒฝ ๊ฒฝํ—˜
  • Datadog: ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ ํ™œ์šฉ
  • TeamCity: CI/CD ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•

๋น„์ฆˆ๋‹ˆ์Šค ์—ญ๋Ÿ‰

๐Ÿ’ผ ์˜ฌ๋ฆฌ๋ธŒ์˜์ด ์ค‘์š”ํ•˜๊ฒŒ ๋ณด๋Š” ์—ญ๋Ÿ‰

  • ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ: ์ผ์ผ ์ฒœ๋งŒ ๊ฑด ์ด์ƒ ์ฒ˜๋ฆฌ ๊ฒฝํ—˜
  • ์„ฑ๋Šฅ ์ตœ์ ํ™”: 99% ์ด์ƒ ์„ฑ๋Šฅ ๊ฐœ์„  ๊ฒฝํ—˜
  • ์‹œ์Šคํ…œ ์•ˆ์ •์„ฑ: 24/7 ๋ฌด์ค‘๋‹จ ์„œ๋น„์Šค ์šด์˜
  • ๊ธ€๋กœ๋ฒŒ ๋Œ€์‘: ๋ฉ€ํ‹ฐ ๋ฆฌ์ „ ์„œ๋น„์Šค ๊ตฌ์ถ• ๊ฒฝํ—˜
  • ๋ ˆ๊ฑฐ์‹œ ์ „ํ™˜: Monolithic โ†’ MSA ์ „ํ™˜ ๊ฒฝํ—˜
  • ํ˜‘์—… ๋Šฅ๋ ฅ: ์Šค์ฟผ๋“œ ๋‹จ์œ„ ์• ์ž์ผ ๊ฐœ๋ฐœ

์†Œํ”„ํŠธ ์Šคํ‚ฌ

๐Ÿค ์ค‘์š”ํ•œ ์†Œํ”„ํŠธ ์Šคํ‚ฌ

  • ๋ฌธ์ œ ํ•ด๊ฒฐ: ๋ณต์žกํ•œ ๊ธฐ์ˆ ์  ์ด์Šˆ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ
  • ํ•™์Šต ๋Šฅ๋ ฅ: ๋น ๋ฅด๊ฒŒ ๋ณ€ํ•˜๋Š” ๊ธฐ์ˆ  ํŠธ๋ Œ๋“œ ๋”ฐ๋ผ๊ฐ€๊ธฐ
  • ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜: ๊ธฐ์ˆ ์  ๋‚ด์šฉ์„ ๋น„๊ฐœ๋ฐœ์ž์—๊ฒŒ ์„ค๋ช…
  • ์˜ค๋„ˆ์‹ญ: ํ”„๋กœ์ ํŠธ ์ฑ…์ž„๊ฐ๊ณผ ์ฃผ๋„์  ์ฐธ์—ฌ
  • ์ฐฝ์˜์„ฑ: ์ƒˆ๋กœ์šด ์•„์ด๋””์–ด์™€ ์†”๋ฃจ์…˜ ์ œ์•ˆ

์ทจ์—… ์ „๋žต ๊ฐ€์ด๋“œ

ํฌํŠธํด๋ฆฌ์˜ค ์ค€๋น„ ์ „๋žต

๐ŸŽฏ ์˜ฌ๋ฆฌ๋ธŒ์˜ ์Šคํƒ€์ผ ํ”„๋กœ์ ํŠธ ์˜ˆ์‹œ

1. ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ํ”„๋กœ์ ํŠธ
  • ์ฃผ์ œ: "์‹ค์‹œ๊ฐ„ ์žฌ๊ณ  ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ตฌ์ถ•"
  • ๊ธฐ์ˆ : Kotlin + Spring Boot + Kafka + Redis
  • ํฌ์ธํŠธ: ์ผ์ผ 100๋งŒ ๊ฑด ์ด์ƒ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ
  • ์„ฑ๊ณผ: ์‘๋‹ต ์‹œ๊ฐ„ 90% ๊ฐœ์„  ๋“ฑ ๊ตฌ์ฒด์  ์ˆ˜์น˜
2. MSA ์ „ํ™˜ ํ”„๋กœ์ ํŠธ
  • ์ฃผ์ œ: "๋ชจ๋†€๋ฆฌ์‹ โ†’ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๋ฆฌํŒฉํ† ๋ง"
  • ๊ธฐ์ˆ : Spring Boot + Docker + AWS ECS
  • ํฌ์ธํŠธ: ๋…๋ฆฝ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์„œ๋น„์Šค ๋ถ„๋ฆฌ
  • ์„ฑ๊ณผ: ๋ฐฐํฌ ์‹œ๊ฐ„ ๋‹จ์ถ•, ์žฅ์•  ์˜ํ–ฅ ๋ฒ”์œ„ ์ถ•์†Œ
3. ์„ฑ๋Šฅ ์ตœ์ ํ™” ํ”„๋กœ์ ํŠธ
  • ์ฃผ์ œ: "DB ์ฟผ๋ฆฌ ์„ฑ๋Šฅ ์ตœ์ ํ™”"
  • ๊ธฐ์ˆ : JPA + MyBatis + Redis ์บ์‹ฑ
  • ํฌ์ธํŠธ: ์ธ๋ฑ์Šค ํŠœ๋‹, ์บ์‹œ ์ „๋žต
  • ์„ฑ๊ณผ: ์‘๋‹ต ์‹œ๊ฐ„ 50๋ฐฐ ๊ฐœ์„  (์˜ฌ๋ฆฌ๋ธŒ์˜๊ณผ ์œ ์‚ฌ)

์ž์†Œ์„œ ์ž‘์„ฑ ํฌ์ธํŠธ

โœ… ๊ฐ•์กฐํ•ด์•ผ ํ•  ๊ฒฝํ—˜

๐Ÿ”ฅ ๊ธฐ์ˆ ์  ์„ฑ๊ณผ ์–ดํ•„
  • "๊ธฐ์กด 50ms ์‘๋‹ต ์‹œ๊ฐ„์„ 3ms๋กœ ๊ฐœ์„ " (๊ตฌ์ฒด์  ์ˆ˜์น˜)
  • "์ผ์ผ 100๋งŒ ๊ฑด ๋ฐ์ดํ„ฐ ์‹ค์‹œ๊ฐ„ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ ๊ตฌ์ถ•"
  • "๋ชจ๋†€๋ฆฌ์‹ ๊ตฌ์กฐ๋ฅผ MSA๋กœ ์ „ํ™˜ํ•˜์—ฌ ๋ฐฐํฌ ํšจ์œจ์„ฑ 300% ํ–ฅ์ƒ"
๐ŸŽฏ ๋น„์ฆˆ๋‹ˆ์Šค ์ž„ํŒฉํŠธ ์—ฐ๊ฒฐ
  • "์‹œ์Šคํ…œ ์•ˆ์ •์„ฑ ํ–ฅ์ƒ์œผ๋กœ ๊ณ ๊ฐ ๋งŒ์กฑ๋„ ๊ฐœ์„ ์— ๊ธฐ์—ฌ"
  • "์„ฑ๋Šฅ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•œ ์„œ๋ฒ„ ๋น„์šฉ 30% ์ ˆ๊ฐ"
  • "์ž๋™ํ™” ๋„์ž…์œผ๋กœ ๊ฐœ๋ฐœํŒ€ ์ƒ์‚ฐ์„ฑ 2๋ฐฐ ํ–ฅ์ƒ"
๐ŸŒŸ ์˜ฌ๋ฆฌ๋ธŒ์˜ ๊ฐ€์น˜ ์—ฐ๊ฒฐ
  • "๊ณ ๊ฐ ๊ฒฝํ—˜ ๊ฐœ์„ ์„ ์œ„ํ•œ ๊ธฐ์ˆ ์  ์†”๋ฃจ์…˜ ์ œ์•ˆ"
  • "๊ธ€๋กœ๋ฒŒ ์„œ๋น„์Šค ํ™•์žฅ์„ ๊ณ ๋ คํ•œ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„"
  • "ํŒ€ ๋‚ด ๊ธฐ์ˆ  ๊ณต์œ ์™€ ํ˜‘์—… ๋ฌธํ™” ์กฐ์„ฑ"

๋ฉด์ ‘ ์ค€๋น„ ์ „๋žต

๐ŸŽค ์˜ˆ์ƒ ์งˆ๋ฌธ ๋ฐ ๋‹ต๋ณ€ ๊ฐ€์ด๋“œ

๊ธฐ์ˆ  ๋ฉด์ ‘ ์˜ˆ์ƒ ์งˆ๋ฌธ
  • Q: "Kotlin์„ ์„ ํƒํ•œ ์ด์œ ๋Š”?"
  • A: "Null Safety, ๊ฐ„๊ฒฐํ•œ ๋ฌธ๋ฒ•, Java 100% ํ˜ธํ™˜์„ฑ์œผ๋กœ ์ƒ์‚ฐ์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ๋™์‹œ์—..."
  • Q: "MSA ์ „ํ™˜ ์‹œ ๊ฐ€์žฅ ์–ด๋ ค์šด ์ ์€?"
  • A: "์„œ๋น„์Šค ๊ฐ„ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ๊ณผ ๋ถ„์‚ฐ ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ. Saga ํŒจํ„ด์œผ๋กœ ํ•ด๊ฒฐ..."
  • Q: "๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๊ฒฝํ—˜์€?"
  • A: "Kafka๋ฅผ ์ด์šฉํ•œ ์ŠคํŠธ๋ฆฌ๋ฐ ์ฒ˜๋ฆฌ์™€ ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ ์กฐํ•ฉ์œผ๋กœ ์ผ์ผ ์ฒœ๋งŒ ๊ฑด..."
๋ฌธํ™” ์ ํ•ฉ์„ฑ ์งˆ๋ฌธ
  • Q: "์˜ฌ๋ฆฌ๋ธŒ์˜์—์„œ ์–ด๋–ค ๊ธฐ์—ฌ๋ฅผ ํ•˜๊ณ  ์‹ถ๋‚˜?"
  • A: "K-๋ทฐํ‹ฐ ๊ธ€๋กœ๋ฒŒ ํ™•์‚ฐ์— ๊ธฐ์ˆ ์ ์œผ๋กœ ๊ธฐ์—ฌํ•˜๊ณ , 950๋งŒ MAU๊ฐ€ ๋” ํŽธ๋ฆฌํ•œ..."
  • Q: "๊ธฐ์ˆ ์  ๋„์ „์— ๋Œ€ํ•œ ์ƒ๊ฐ์€?"
  • A: "๋Š์ž„์—†๋Š” ํ•™์Šต๊ณผ ์‹คํ—˜์„ ํ†ตํ•ด ๊ณ ๊ฐ ๊ฐ€์น˜๋ฅผ ์ฐฝ์ถœํ•˜๋Š” ๊ฒƒ์ด ๊ฐœ๋ฐœ์ž์˜..."

ํ•™์Šต ๋กœ๋“œ๋งต

๐Ÿ“š ๋‹จ๊ณ„๋ณ„ ํ•™์Šต ๊ณ„ํš

1๋‹จ๊ณ„: ๊ธฐ๋ณธ๊ธฐ ๋‹ค์ง€๊ธฐ (3๊ฐœ์›”)
  • Kotlin ๋งˆ์Šคํ„ฐ: Java ๋Œ€๋น„ Kotlin ์žฅ์  ์ดํ•ด
  • Spring Boot ์‹ฌํ™”: JPA, Security, Test ์ฝ”๋“œ
  • Docker ๊ธฐ์ดˆ: ์ปจํ…Œ์ด๋„ˆํ™” ๊ฐœ๋…๊ณผ ์‹ค์Šต
  • AWS ๊ธฐ๋ณธ: EC2, RDS, S3 ๋“ฑ ๊ธฐ๋ณธ ์„œ๋น„์Šค
2๋‹จ๊ณ„: ์‹ค์ „ ํ”„๋กœ์ ํŠธ (3๊ฐœ์›”)
  • Kafka ํ”„๋กœ์ ํŠธ: ๋ฉ”์‹œ์ง• ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๊ฒฝํ—˜
  • Redis ์บ์‹ฑ: ์„ฑ๋Šฅ ์ตœ์ ํ™” ํ”„๋กœ์ ํŠธ
  • MSA ์„ค๊ณ„: ์„œ๋น„์Šค ๋ถ„๋ฆฌ์™€ API Gateway
  • ๋ชจ๋‹ˆํ„ฐ๋ง ๊ตฌ์ถ•: ๋กœ๊ทธ ์ˆ˜์ง‘๊ณผ ๋Œ€์‹œ๋ณด๋“œ
3๋‹จ๊ณ„: ์‹ฌํ™” ์—ญ๋Ÿ‰ (3๊ฐœ์›”)
  • ์„ฑ๋Šฅ ํŠœ๋‹: ํ”„๋กœํŒŒ์ผ๋ง๊ณผ ์ตœ์ ํ™”
  • ๋Œ€์šฉ๋Ÿ‰ ์ฒ˜๋ฆฌ: ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ์™€ ์ŠคํŠธ๋ฆฌ๋ฐ
  • ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜: ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋žต
  • DevOps: CI/CD ํŒŒ์ดํ”„๋ผ์ธ ์ž๋™ํ™”

๐ŸŽฏ ๋‹น์žฅ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์•ก์…˜ ํ”Œ๋žœ

  1. ์˜ฌ๋ฆฌ๋ธŒ์˜ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ํŒ”๋กœ์šฐ: ์ตœ์‹  ๊ธฐ์ˆ  ๋™ํ–ฅ ํŒŒ์•…
  2. Kotlin + Spring Boot ํ† ์ด ํ”„๋กœ์ ํŠธ: ๊ธฐ๋ณธ๊ธฐ ๋‹ค์ง€๊ธฐ
  3. ์™ธ๋ถ€ ์ปจํผ๋Ÿฐ์Šค ์ฐธ์—ฌ: SpringCamp, Let'Swift ๋“ฑ ์ฐธ์„
  4. ์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ: GitHub ํ™œ๋™์œผ๋กœ ์ฝ”๋“œ ํ’ˆ์งˆ ์–ดํ•„
  5. ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ์šด์˜: ํ•™์Šต ๊ณผ์ •๊ณผ ํ”„๋กœ์ ํŠธ ๊ฒฝํ—˜ ๊ณต์œ 

๋งˆ์น˜๋ฉฐ

CJ์˜ฌ๋ฆฌ๋ธŒ์˜์€ ๋‹จ์ˆœํ•œ ์ด์ปค๋จธ์Šค ํšŒ์‚ฌ๊ฐ€ ์•„๋‹ˆ๋ผ, ๋Œ€์šฉ๋Ÿ‰ ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธ€๋กœ๋ฒŒ ๊ธฐ์ˆ  ๊ธฐ์—…์œผ๋กœ ์ง„ํ™”ํ•˜๊ณ  ์žˆ์–ด์š”. ์ผ์ผ ์ฒœ๋งŒ ๊ฑด ์ด์ƒ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ , 950๋งŒ MAU๋ฅผ ์ง€์›ํ•˜๋Š” ๊ธฐ์ˆ ๋ ฅ์€ ์ •๋ง ์ธ์ƒ์ ์ž…๋‹ˆ๋‹ค.

ํŠนํžˆ MSA ์ „ํ™˜๊ณผ ๋ฉ€ํ‹ฐ ํด๋ผ์šฐ๋“œ ์ „๋žต, ๊ทธ๋ฆฌ๊ณ  99% ์ด์ƒ์˜ ์„ฑ๋Šฅ ๊ฐœ์„  ์‚ฌ๋ก€๋“ค์„ ๋ณด๋ฉด, ๊ธฐ์ˆ ์ ์œผ๋กœ ๋งค์šฐ ๋„์ „์ ์ด๊ณ  ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ผ๋Š” ๊ฑธ ์•Œ ์ˆ˜ ์žˆ์–ด์š”.

๐ŸŽฏ ๋งˆ์ง€๋ง‰ ์กฐ์–ธ

์˜ฌ๋ฆฌ๋ธŒ์˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ๋‹ค๋ฉด, Kotlin + Spring Boot ๊ธฐ๋ฐ˜์˜ ๋Œ€์šฉ๋Ÿ‰ ์ฒ˜๋ฆฌ ๊ฒฝํ—˜์„ ์Œ“๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ค‘์š”ํ•ด์š”. ๋‹จ์ˆœํžˆ ๊ธฐ์ˆ ์„ ์•„๋Š” ๊ฒƒ๋ณด๋‹ค๋Š”, ์‹ค์ œ ๋น„์ฆˆ๋‹ˆ์Šค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์„ฑ๊ณผ๋ฅผ ๋‚ธ ๊ฒฝํ—˜์„ ์–ดํ•„ํ•˜์„ธ์š”.

๊ทธ๋ฆฌ๊ณ  ์˜ฌ๋ฆฌ๋ธŒ์˜์˜ ๋น„์ „์ธ "K-๋ทฐํ‹ฐ ๊ธ€๋กœ๋ฒŒ ํ”Œ๋žซํผ"์— ๊ธฐ์ˆ ์ ์œผ๋กœ ์–ด๋–ป๊ฒŒ ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋ฅผ ๊ตฌ์ฒด์ ์œผ๋กœ ์ œ์‹œํ•œ๋‹ค๋ฉด, ๋ฉด์ ‘์—์„œ ํฐ ์–ดํ•„ ํฌ์ธํŠธ๊ฐ€ ๋  ๊ฑฐ์˜ˆ์š”.

๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ: 2025๋…„ 9์›” 16์ผ | ์˜ฌ๋ฆฌ๋ธŒ์˜ ๊ณต์‹ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ ๊ธฐ์ค€

#์˜ฌ๋ฆฌ๋ธŒ์˜๋ฐฑ์—”๋“œ #์ฝ”ํ‹€๋ฆฐ๊ฐœ๋ฐœ์ž #์Šคํ”„๋ง๋ถ€ํŠธ #MSA์ „ํ™˜ #AWS๊ฐœ๋ฐœ #๋Œ€์šฉ๋Ÿ‰์ฒ˜๋ฆฌ #๊ฐœ๋ฐœ์ž์ทจ์—… #๊ธฐ์ˆ ์Šคํƒ๋ถ„์„

ํšŒ์›๊ฐ€์ž…ํ•˜๊ณ  ๋” ๋งŽ์€ ํ˜œํƒ์„ ๋ฐ›์•„๋ณด์„ธ์š”!

ํšŒ์›๊ฐ€์ž… ํ›„ ์žกํ”„๋žฉ์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜๊ณ  ์ทจ์—… ์„ฑ๊ณต๋ฅ ์„ ๋†’์—ฌ๋ณด์„ธ์š”.

๋” ๋งŽ์€ ์•„ํ‹ฐํด ๋‘˜๋Ÿฌ๋ณด๊ธฐ