Posts ๐Ÿฅ ์ฃผ๋‹ˆ์–ด ์„ฑ์žฅ์ผ๊ธฐ: 2021.04.26
Post
Cancel

๐Ÿฅ ์ฃผ๋‹ˆ์–ด ์„ฑ์žฅ์ผ๊ธฐ: 2021.04.26

  • ์ฒซ ๋ฐฐํฌํ•œ ๋‚ 
    • ์ฒซ ์ž‘์—…์„ ์šด์˜ ์„œ๋ฒ„์— ๋ฐฐํฌํ•˜์˜€๋‹ค.
    • ์•„์ง์€ git ์ดํ•ด๊ฐ€ ๋ฏธ์ˆ™ํ•ด์„œ ์šด์˜ ์„œ๋ฒ„์— ๋ฐฐํฌํ•˜๊ธฐ๊นŒ์ง€ ์‹ค์ˆ˜๊ฐ€ ์žฆ์•˜๋‹ค.
  • ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ์˜ ์ข…๋ฅ˜
    • ํด๋ž˜์‹ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์Šค(ELB)
      • ๋ ˆ์ด์–ด 4๊ณ„์ธต์—์„œ ์ž‘๋™
      • ํ•˜๋“œ์›จ์–ด ์˜์—ญ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋‹ค.
      • ์„œ๋ฒ„์˜ ๊ธฐ๋ณธ ์ฃผ์†Œ๊ฐ€ ๋ฐ”๋€Œ๋ฉด ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋ฉฐ, ํ•˜๋‚˜์˜ ์ฃผ์†Œ์— ํ•˜๋‚˜์˜ ๋Œ€์ƒ ๊ทธ๋ฃน์œผ๋กœ ๋ณด๋‚ด๊ฒŒ ๋œ๋‹ค.
      • ๋”ฐ๋ผ์„œ ์„œ๋ฒ„์˜ ๊ตฌ์„ฑ์ด ๋น„๋Œ€ํ•ด์ง€๊ณ  ๋งˆ์ดํด ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค.
      • ex) ํšŒ์› ๋ชจ๋“ˆ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ธ์Šคํ„ด์Šค์™€ ์ƒํ’ˆ ๋ชจ๋“ˆ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ๋”ฐ๋กœ ์กด์žฌํ•œ๋‹ค๋ฉด 2๊ฐœ์˜ ๋กœ๋“œ๋ฐธ๋Ÿฐ์„œ๊ฐ€ ํ•„์š”ํ•˜๊ณ , ๋น„์šฉ๋„ 2๋ฐฐ๋กœ ๋“ค์–ด๊ฐ€๊ฒŒ ๋œ๋‹ค.
    • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ๋“œ ๋ฒจ๋Ÿฐ์„œ(ALB)
      • ๋ ˆ์ด์–ด 7๊ณ„์ธต์—์„œ ์ž‘๋™
      • ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต์œผ๋กœ ํฌํŠธ๋‚˜ ํ—ค๋” ๋“ฑ์ด ์ˆ˜์ • ๊ฐ€๋Šฅํ•˜๋‹ค.
      • path๋‚˜ port ๋“ฑ์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ๋Œ€์ƒ๊ทธ๋ฃน์œผ๋กœ ๋งคํ•‘ํ•  ์ˆ˜ ์žˆ๋‹ค.
      • ํฌํŠธ ๋‹จ์œ„๋กœ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ํ™˜๊ฒฝ์—์„œ ์•„์ฃผ ์œ ์šฉํ•˜๊ณ , ํ•˜๋‚˜์˜ ํƒ€๊ฒŸ๊ทธ๋ฃน์— ๋” ๋งŽ์€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋„ฃ์–ด ๋น„์šฉ์„ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค.
      • ๋Œ€์ƒ์„ EC2 ์ธ์Šคํ„ด์Šค, ๋žŒ๋‹ค, IP๋กœ๋„ ์—ฐ๊ฒฐ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
      • ํŠน์ •ํ•œ ์š”์ฒญ์— ๋Œ€ํ•ด์„œ๋Š” ์„œ๋ฒ„ ์—†์ด ์ง์ ‘ ์‘๋‹ต๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
      • ๋งˆ์ดํฌ๋กœ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๊ตฌ์„ฑํ•˜๊ธฐ ์ข‹๋‹ค.
  • Target Group
    • EC2 ์ธ์Šคํ„ด์Šค๋ฅผ ์˜คํ†  ์Šค์ผ€์ผ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์œ„๋กœ ์‚ฌ์šฉ๋œ๋‹ค.
    • ๊ฐ๊ฐ์˜ ํƒ€๊ฒŸ ๊ทธ๋ฃน์— ์žˆ๋Š” ์ธ์Šคํ„ด์Šค๋“ค์€ ์ •์˜๋œ ์ƒํƒœ ๊ฒ€์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•œ๋‹ค.
      • ์ƒํƒœ ๊ฒ€์‚ฌ: ํƒ€๊ฒŸ๊ทธ๋ฃน์— ์›ํ•˜๋Š” ๊ฒฝ๋กœ์™€ ํฌํŠธ๋ฅผ ์„ค์ •ํ•ด ์ •์ƒ์ ์œผ๋กœ ์›ํ•˜๋Š” HTTP ์‘๋‹ต์ด ์˜ค๋Š”์ง€ ํ™•์ธํ•˜๊ฒŒ ํ•ด์ค€๋‹ค. ๋งŒ์•ฝ ์ •์ƒ์ ์œผ๋กœ ์‘๋‹ต์ด ์˜ค์ง€ ์•Š๋Š” ์ธ์Šคํ„ด์Šค๊ฐ€ ์žˆ๋‹ค๋ฉด ๋‹ค๋ฅธ ์ธ์Šคํ„ด์Šค๋กœ๋งŒ ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์‚ฐํ•œ๋‹ค.
  • ์ƒˆ๋กœ์šด ์—…๋ฌด๋ฅผ ๋ฐ›์•˜๋‹ค. ์™ธ๋ถ€ API๋ฅผ ์—ฐ๋™ํ•˜๋Š” ์ž‘์—…์ธ๋ฐ, ์•”๋ณตํ˜ธํ™” ์ฒ˜๋ฆฌ๊ฐ€ ์ข€ ๊นŒ๋‹ค๋กœ์šธ ๊ฒƒ ๊ฐ™๋‹ค. ์‹ค์ œ๋กœ ์•”๋ณตํ˜ธํ™”๋Š” ์ฒ˜๋ฆฌํ•ด๋ณด์ง€ ์•Š์•„์„œ (ํ•ด๋ด์•ผ ๋‹จ๋ฐฉํ–ฅ ์•”ํ˜ธํ™”) ๊ฑฑ์ • ๋ฐ˜ ๊ธฐ๋Œ€ ๋ฐ˜์ด๋‹ค.
  • ์‹ค์ œ API ์š”์ฒญ ๋ฐ ์‘๋‹ต์€ RestTemplate์„ ์‚ฌ์šฉํ•ด์•ผ ํ• ๊นŒ, Feign Client๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ• ๊นŒ? Feign์ด RestTemplate๋ณด๋‹ค๋Š” ๊ฐ„๊ฒฐํ•˜๊ณ  ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋กœ ๋‹ค๋ฅธ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๊ฐ€๋ฆฌ์ง€ ์•Š๋Š”๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๊ธด ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ๊ฐ„๋‹จํ•œ ์ž‘์—…์— ์‚ฌ์šฉํ•ด๋„ ๊ดœ์ฐฎ์€๊ฑด์ง€.. ๋Š” ์ข€ ๋” ์ƒ๊ฐํ•ด๋ณด๊ธฐ
  • ์˜ค๋Š˜์€ ์‚ด์ง ์ƒˆ๋กœ ๋ฐ›์€ ์ž‘์—…์— ์••๋„๋‹นํ•ด์„œ ์—…๋ฌด์‹œ๊ฐ„์„ ๊ทธ๋ฆฌ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™๋‹ค. ์™„์„ฑ๋  ์•„์ง์€ ์ถ”์ƒ์ ์ธ ๊ธฐ๋Šฅ๋งŒ ์ƒ๊ฐํ•˜๊ณ  ๊ฑฐ๊ธฐ๊นŒ์ง€์˜ ํ•œ ๋‹จ๊ณ„ ํ•œ ๋‹จ๊ณ„๋Š” ๋ณด์ง€ ๋ชปํ•ด์„œ ๊ทธ๋Ÿฐ ๊ฒŒ ์•„๋‹๊นŒ ์‹ถ๋‹ค. ๋‚ด์ผ ์ถœ๊ทผํ•ด์„œ๋Š” ์กฐ๊ธ‰ํ•ดํ•˜์ง€ ๋ง๊ธฐ

์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ์˜ค๋Š˜์€ DFS, BFS๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์ •๋ฆฌํ–ˆ๋‹ค. => BFS, DFS
  • BFS์™€ DFS์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(๋…ธ๋“œ์ˆ˜ + ๊ฐ„์„ ์ˆ˜)

ํ”„๋กœ์ ํŠธ

  • ํ”„๋ก ํŠธ ์ชฝ์—์„œ ๋ฐฑ์—”๋“œ๋กœ ์š”์ฒญํ•  ๋•Œ CORS ์—๋Ÿฌ๊ฐ€ ๋‚œ๋‹ค ๊ทธ๋Ÿฌ์…”์„œ Security ์„ค์ •์„ ๋ณ€๊ฒฝํ–ˆ๋‹ค.
  • ๊ทธ๋™์•ˆ ์ฐธ์—ฌํ•˜์ง€ ๋ชปํ–ˆ๋˜ ๋ฐฑ์—”๋“œ ํŒ€์›๋ถ„์ด ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด์„œ ์—ญํ•  ๋ถ„๋‹ด์„ ํ–ˆ๋‹ค. ์‚ฌ๋žŒ ํ•œ ๋ช…์ด ์ด๋ ‡๊ฒŒ ๋“ ๋“ ํ•  ์ค„์ด์•ผ..

Git

์˜ค๋Š˜์€ ๋‹จ์—ฐ Git๊ณผ ๊ฐ€์žฅ ๋งŽ์ด ์”จ๋ฆ„ํ•œ ํ•˜๋ฃจ..

โ€œํšŒ์‚ฌ ๊ณ„์ •๊ณผ ๊ฐœ์ธ ๊ณ„์ •์„ ๋™์‹œ์— ์‚ฌ์šฉํ•˜๋‹ค๊ฐ€ ํšŒ์‚ฌ ๊ณ„์ •์œผ๋กœ ๊ฐœ์ธ ํŒ€ํ”Œ์— ํ‘ธ์‹œ๋ฅผ ํ•ด๋ฒ„๋ ธ๋‹ค ;;โ€๋Š” ์ด์Šˆ๊ฐ€ ์žˆ์—ˆ๋‹ค.

์ด์— ์ด๋Ÿฌํ•œ ์‹ค์ˆ˜๋ฅผ ๋ฐ˜๋ณตํ•˜์ง€ ์•Š๊ธฐ ์œ„ํ•ด ํ•œ ๋จธ์‹ ์—์„œ ๋ฉ€ํ‹ฐ ๊ณ„์ •์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•˜๊ณ , ์ด๋ฏธ ํšŒ์‚ฌ ๊ณ„์ •์œผ๋กœ ์˜ฌ๋ฆฐ ์ปค๋ฐ‹์„ ๊ฐœ์ธ ๊ณ„์ •์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์„ ์‹œ๋„ํ–ˆ๋‹ค.

  • git ๊ณ„์ • ์—ฌ๋Ÿฌ ๊ฐœ ๋™์‹œ ์‚ฌ์šฉํ•˜๊ธฐ
    • ๊ฐ ๊ณ„์ •์˜ SSH key-gen์„ ๋งŒ๋“ค์–ด์ค€๋‹ค (์ด๋ฏธ ๋งŒ๋“ค์–ด์ ธ ์žˆ์–ด์„œ ํŒจ์Šค)
    • SSH key๋ฅผ ๋“ฑ๋กํ•œ๋‹ค.
    • config ํŒŒ์ผ๋กœ ๋‹ค์ˆ˜์˜ ๊ณ„์ •์„ ๊ด€๋ฆฌํ•œ๋‹ค.
    • ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ๊ณ„์ •์„ ์ง์ ‘ ์ „ํ™˜ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ์‹ค์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํด๋” ๋ณ„๋กœ ๋‹ค๋ฅธ ๊ณ„์ •์„ ์‚ฌ์šฉํ•˜๋„๋ก ์„ค์ •ํ•œ๋‹ค (.gitconfig)
  • ์ด๋ฏธ ์ปค๋ฐ‹๋œ ๋‚ด์šฉ์—์„œ author ์ˆ˜์ •ํ•˜๊ธฐ
    • https://jojoldu.tistory.com/120 ์ด ๋ธ”๋กœ๊ทธ ๊ธ€์„ ์ฝ๊ณ  ํ–ˆ๋‹ค.
This post is licensed under CC BY 4.0 by the author.

BFS, DFS

๐Ÿฅ ์ฃผ๋‹ˆ์–ด ์„ฑ์žฅ์ผ๊ธฐ: 2021.04.27

Loading comments from Disqus ...