Home > Backend > Post > ๐Ÿ“[blog post] ๋‚˜๋Š” ์–ด๋–ค ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์€๊ฑธ๊นŒ?

๐Ÿ“[blog post] ๋‚˜๋Š” ์–ด๋–ค ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์€๊ฑธ๊นŒ?
์ œ๋กœ๋ฒ ์ด์Šค ๋ฐฑ์—”๋“œ Java Spring ๊ฐœ๋ฐœ์ž ๋ฐฑ์—”๋“œ๊ณต๋ถ€ ๋ฐฑ์—”๋“œ์Šค์ฟจ

๐Ÿค” ๋‚˜๋Š” ์–ด๋–ค ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์€๊ฑธ๊นŒ?

๐Ÿ™‹โ€โ™‚๏ธ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž์˜ ์—ญํ• ๊ณผ ์ฑ…์ž„

์–ด๋–ค ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์€์ง€ ๋งํ•˜๊ธฐ ์ „์— ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋Š” ์–ด๋–ค ์—ญํ• ๊ณผ ์ฑ…์ž„์ด ์žˆ๋Š”์ง€ ์•Œ์•„๋ณด์•„์•ผ ํ•  ๊ฒƒ ๊ฐ™์•„์š”.

1๏ธโƒฃ ์›น ์„œ๋ฒ„ ๊ฐœ๋ฐœ.

  • ์›น ์„œ๋ฒ„ ๋ฐ API ๊ฐœ๋ฐœ.
  • HTTP ์š”์ฒญ ๋ฐ ์‘๋‹ต ์ฒ˜๋ฆฌ.
  • RESTful ์„œ๋น„์Šค ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„.

2๏ธโƒฃ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ.

  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ๋ฐ ์ตœ์ ํ™”.
  • SQL ๋ฐ NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—….
  • ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง ๋ฐ ์Šคํ‚ค๋งˆ ์„ค๊ณ„.

3๏ธโƒฃ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ๋กœ์ง.

  • ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ๊ตฌํ˜„.
  • ์‚ฌ์šฉ์ž ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๊ด€๋ฆฌ.
  • ๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ.

4๏ธโƒฃ API ๊ฐœ๋ฐœ ๋ฐ ํ†ตํ•ฉ.

  • ์™ธ๋ถ€ API์™€์˜ ํ†ตํ•ฉ ์ž‘์—….
  • ๋‚ด๋ถ€ API ์„ค๊ณ„ ๋ฐ ๊ฐœ๋ฐœ.
  • API ๋ฌธ์„œํ™” ๋ฐ ์œ ์ง€๋ณด์ˆ˜.

5๏ธโƒฃ ์„ฑ๋Šฅ ์ตœ์ ํ™”.

  • ์„œ๋ฒ„ ์„ฑ๋Šฅ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ํŠœ๋‹.
  • ์บ์‹ฑ ์ „๋žต ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„.
  • ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ๋ฐ ์Šค์ผ€์ผ๋ง.

6๏ธโƒฃ ๋ณด์•ˆ ๊ด€๋ฆฌ.

  • ๋ฐ์ดํ„ฐ ๋ณด์•ˆ ๋ฐ ์•”ํ˜ธํ™”.
  • OWASP ๋ฐ ๊ธฐํƒ€ ๋ณด์•ˆ ์ง€์นจ ์ค€์ˆ˜.
  • ์นจ์ž… ํƒ์ง€ ๋ฐ ๋Œ€์‘.

7๏ธโƒฃ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ….

  • AWS, Azure, GCP ๋“ฑ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ ์‚ฌ์šฉ.
  • ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์„œ๋น„์Šค ๋ฐฐํฌ ๋ฐ ๊ด€๋ฆฌ.
  • ์ปจํ…Œ์ด๋‚˜ํ™” ๋ฐ ์˜ค์ผ€์ด์ŠคํŠธ๋ ˆ์ด์…˜(Docker, Kubernetes)

8๏ธโƒฃ DevOps์™€ CI/CD.

  • ์ง€์†์  ํ†ตํ•ฉ ๋ฐ ๋ฐฐํฌ(CI/CD) ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•.
  • ์„œ๋ฒ„ ๋ฐ ์„œ๋น„์Šค์˜ ์ž๋™ํ™” ๋ฐ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜.
  • ์ธํ”„๋ผ์ŠคํŠธ๋Ÿญ์ฒ˜ ์ฝ”๋“œํ™”(Infrastructure as Code).

9๏ธโƒฃ ๋กœ๊ทธ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง.

  • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์„œ๋ฒ„ ๋กœ๊ทธ ๊ด€๋ฆฌ.
  • ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ ์„ค์ •(์˜ˆ: Prometheus, Grafana).
  • ๋กœ๊ทธ ๋ถ„์„ ๋ฐ ๋ฌธ์ œ ํ•ด๊ฒฐ.

๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์ด ๋ชจ๋“  ์—ญํ• ์„ ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ์ˆ˜ํ–‰ํ•˜์ง€ ์•Š์•„์š”.
ํšŒ์‚ฌ๋‚˜ ํŒ€์˜ ๊ตฌ์กฐ์— ๋”ฐ๋ผ ํŠน์ • ์—ญํ• ์— ์ง‘์ค‘ํ•˜๊ฒŒ ๋œ๋‹ต๋‹ˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, ์ผ๋ถ€ ๊ฐœ๋ฐœ์ž๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ์— ์ค‘์ ์„ ๋‘๊ณ , ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ด€๋ฆฌ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ ๋‚ด๊ฐ€ ๋˜๊ณ  ์‹ถ์€ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž.

    1. ๋งก์€ ์—ญํ• ๊ณผ ์ฑ…์ž„์— ์ตœ์„ ์„ ๋‹คํ•˜๋Š” ๊ฐœ๋ฐœ์ž
      • ์ €๋Š” ๋งก์€ ๋ฐ”์— ํ•ญ์ƒ ์ตœ์„ ์„ ๋‹คํ•ด ์ž„๋ฌด๋ฅผ ์™„์ˆ˜ํ•ฉ๋‹ˆ๋‹ค.
      • ๋‚ด๊ฐ€ ๋งก์€ ๋ฐ”์—๋Š” ์ฑ…์ž„์ด๋ผ๋Š” ๊ฒƒ์ด ๋”ฐ๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ํ•ญ์ƒ ์ตœ์„ ์„ ๋‹คํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
    1. ์†Œํ†ต์„ ์ž˜ํ•˜๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž.
      • ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์ด ์ •๋ง ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.
      • ํ•˜๋‚˜์˜ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ํ•จ๊ป˜ ๋งŒ๋“ค์–ด๊ฐ€๋Š” ๊ฒƒ ์ด๊ธฐ ๋•Œ๋ฌธ์— ํ•จ๊ป˜ ํ˜‘๋ ฅํ•˜๊ณ  ์†Œํ†ต์„ ์ž˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    1. ์œ ์—ฐํ•œ ์‚ฌ๊ณ ๋ฅผ ๊ฐ€์ง„ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž.
      • ๋‚˜ ์ž์‹ ์˜ ์˜๊ฒฌ ๋˜๋Š” ์ƒ๊ฐ ์—ญ์‹œ๋„ ํ‹€๋ฆด ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ํ•ญ์ƒ ์ธ์ง€ํ•˜๊ณ  ์—ฌ๋Ÿฌ ๋ชจ๋“  ์˜๊ฒฌ์„ ์œ ์—ฐํ•˜๊ฒŒ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
    1. ๋ง์ด ์•„๋‹Œ ์ฝ”๋“œ๋กœ ์ฆ๋ช…ํ•˜๋Š” ๊ฐœ๋ฐœ์ž.
      • ๋ง๋กœ๋งŒ ๋Œ€๋‹จํ•œ ๋“ฏ์ด ๋งํ•˜๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์•„๋‹Œ ์ง„์งœ ์ฝ”๋“œ๋กœ ์ฆ๋ช…ํ•ด๋‚ด๋Š” ๊ทธ๋Ÿฐ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
    1. ๊ฒธ์†๊ณผ ๊พธ์ค€ํ•œ ์„ฑ์žฅ์„ ํ•˜๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž.
      • ๊ฒธ์†์˜ ๋ฏธ๋•์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์–ธ์ œ๋‚˜ ๋ฐฐ์›€์˜ ์ž์„ธ๋ฅผ ๊ฐ€์ง€๊ณ  ํ•ญ์ƒ ๋ฐฐ์šฐ๋ ค ๋…ธ๋ ฅํ•˜๋ฉฐ ๊พธ์ค€ํžˆ ์„ฑ์žฅํ•˜๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.