๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

TIL, WIL/TIL๐Ÿ“˜

2024 ์นด์นด์˜ค ์ปจํผ๋Ÿฐ์Šค 3์ผ์ฐจ ์ฐธ์„ ๊ฐ„๋‹จํ•œ ๋‚ด์šฉ ์ •๋ฆฌ

728x90

์ฐธ์—ฌํ•œ ์„ธ์…˜

  • 10 : 00 ~ 12 : 00
    AI financial Tech
    AI Life Tech
  • 13 : 00 ~ 14 : 00
    ์นด์นด์˜ค ์„œ๋น„์Šค๋“ค์€ ์–ด๋–ป๊ฒŒ CI/CD ๋ฅผ ํ•˜๋Š”๊ฐ€?
  • 14 : 00 ~ 15 : 00
    ๋ชจ๋‘๋ฅผ ์œ„ํ•œ ๊ฒŒ์ž„ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ
  • 15 : 00 ~ 16 : 00
    GraalVM ๋„์ž…์œผ๋กœ JVM ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ๋™ ์ดˆ๊ธฐ ์„ฑ๋Šฅ ๋ฌธ์ œ ํ•ด๊ฒฐํ•˜๊ธฐ
  • 16 : 00 ~ 17: 00
    ์นด์นด์˜คํŽ˜์ด๋Š” ์–ด๋–ป๊ฒŒ ์ˆ˜์ฒœ๋งŒ ๊ฒฐ์ œ๋ฅผ ์ฒ˜๋ฆฌํ• ๊นŒ? ์šฐ์•„ํ•œ ๊ฒฐ์ œ ๋ถ„์‚ฐ๋ฝ ๋…ธํ•˜์šฐ
  • 17 : 00 ~ 18 : 00
    ์นด์นด์˜ค ๋นŒ๋ง MySQL DB ์ƒค๋”ฉ ์ ์šฉ

ํ•„์ˆ˜ ์ฐธ์—ฌ

1) AI financial Tech
ํŒจ๋„ํ†ก : ์นด์นด์˜ค๋ฑ…ํฌ, ์นด์นด์˜คํด๋ผ์šฐ๋“œ, ์นด์นด์˜คํŽ˜์ด
  ์นด์นด์˜ค ๋ฑ…ํฌ : ๋ณดํ—˜ ๋ถ„์„ ๊ด€๋ จ ์ธ๊ณต์ง€๋Šฅ ๋ฐœ์ „ ์ƒํ™ฉ ๊ณต์œ 
  ์นด์นด์˜ค ํด๋ผ์šฐ๋“œ : ์นด์นด์˜ค ํด๋ผ์šฐ๋“œ์˜ ์†Œ๊ฐœ, ์ธ๊ณต์ง€๋Šฅ ์˜คํ”ผ์Šค ํ”Œ๋žซํผ Koworker(2025๋…„ ๊ณต๊ฐœ์˜ˆ์ •)
  ์นด์นด์˜ค ํŽ˜์ด : AI๋ฅผ ํ™œ์šฉํ•œ ๋น„์ •์ƒ ๊ฑฐ๋ž˜ ๋‹จ์†, ๊ฐœ์„  ์ƒํ™ฉ ๊ณต์œ 

 

2) AI Life Tech
ํŒจ๋„ํ†ก : ์นด์นด์˜คํ—ฌ์Šค์ผ€์–ด, ์นด์นด์˜ค๋ชจ๋นŒ๋ฆฌํ‹ฐ, ์นด์นด์˜คํŽ˜์ด์ง€
  ์นด์นด์˜ค ํ—ฌ์Šค์ผ€์–ด : ์ธ๊ณต์ง€๋Šฅ ํ˜ˆ๋‹น๊ด€๋ฆฌ ์†”๋ฃจ์…˜ ํŒŒ์Šคํƒ€
  ์นด์นด์˜ค ๋ชจ๋นŒ๋ฆฌํ‹ฐ : ์ž์œจ์ฃผํ–‰ ํƒ์‹œ ํ˜„ํ™ฉ, ๋ธŒ๋ง(Bring) : ์ปค๋ฎค๋‹ˆํ‹ฐ ๋‚ด๋ถ€ ๋ฐฐ๋‹ฌ ๋กœ๋ด‡
  ์นด์นด์˜ค ํŽ˜์ด์ง€ : ์‚ฌ๋žŒ ์ œ์ž‘ ์›นํˆฐ ์†Œ๊ฐœ ์‡ผ์ธ  vs AI ์ œ์ž‘ ๋น„๊ต, ์žฅ์  ์†Œ๊ฐœ

 

→ ๊ฐ ํšŒ์‚ฌ์˜ ํ˜„์žฌ ๊ธฐ์ˆ  ์„ฑ๊ณผ๋ฅผ ๊ณต์œ ํ•˜๊ณ  Q&A, ์ถ”ํ›„ ์„ฑ๊ณผ ๊ณต๊ฐœ

๊ฐœ์ธ์ ์œผ๋กœ ์ฐธ์—ฌํ•œ ์„ธ์…˜

1. ์นด์นด์˜ค ์„œ๋น„์Šค๋“ค์€ ์–ด๋–ป๊ฒŒ CI/CD ๋ฅผ ํ•˜๋Š”๊ฐ€?

→ ๋‹ค์–‘ํ•œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ํ™˜๊ฒฝ, ๊ฐ ์„œ๋น„์Šค ๋ณ„๋กœ ๋ฐฐํฌ ์ ˆ์ฐจ๊ฐ€ ๋‹ค๋ฅด๊ณ  ์‚ฌ์šฉํ•˜๋Š” ํ”Œ๋žซํผ์ด ๋‹ฌ๋ผ ๋ฌธ์ œ ๋ฐœ์ƒ

 

๋ฌธ์ œ์  :

 - ๋ฐฐํฌ ์‹œ ํ•™์Šต ๊ณก์„  ๋“ฑ ๋น„์šฉ์ด ๋ฐœ์ƒ
 - ์„œ๋ฒ„ ๋ฆฌ์†Œ์Šค ๋‚ญ๋น„

 

๋Œ€์•ˆ

Kargo, ์นด์นด์˜ค ์ž์ฒด CI/CD ์†”๋ฃจ์…˜

 

Kargo์˜ 4๊ฐ€์ง€ ์„ค๊ณ„ ์›์น™

 

1)์ค‘์•™ํ™” :
๊ณตํ†ต kubeconfig ์„ค์ • ๋ฐ ํ•ด๋‹น ํ‚ค๋ฅผ ์„œ๋น„์Šค์— ๊ณต์œ ํ•œ ํ›„ ๋ฐฐํฌ ์ ˆ์ฐจ ์ˆ˜ํ–‰

→ ํ†ต์ผ๋œ CICD ์ ˆ์ฐจ ๊ตฌ์ถ•์„ ํ†ตํ•œ ๋ฆฌ์†Œ์Šค ์ตœ์†Œํ™”

 

2) ๊นƒ ์˜ต์Šค : ํŒŒ์ดํ”„๋ผ์ธ ์ž๋™ํ™”๋ฅผ ํ†ตํ•ด ๋ฐฐํฌ ๋ถ€๋‹ด ๊ฐ์†Œ

 

3) ๋ฌด์„ค์น˜ : K8s Job์„ ํ†ตํ•œ ์ƒํƒœ, ํžˆ์Šคํ† ๋ฆฌ ๊ด€๋ฆฌ

 

4) MSA : ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ตœ๋Œ€ํ•œ ๋ถ„๋ฆฌํ•ด ์•ˆ์ •์„ฑ ํ™•๋ณด

2. ๋ชจ๋‘๋ฅผ ์œ„ํ•œ ๊ฒŒ์ž„ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ :
๋กœ๊ทธ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ์‹œ ๋ณด๋‹ค ํšจ์œจ์ ์ด๊ณ  ๋น ๋ฅธ ๊ฒ€์ƒ‰์„ ์œ„ํ•œ ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ ๋„์ž…๊ธฐ

์‹œํ–‰์ฐฉ์˜ค
- ์ฟผ๋ฆฌ ๋นŒ๋”๋ฅผ ์‚ฌ์šฉํ•œ SQL ์ฟผ๋ฆฌ ์ž‘์„ฑ ํ›„ ๊ฒ€์ƒ‰
→ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ฟผ๋ฆฌ๊ฐ€ ์ œํ•œ์ ์ด๊ณ , ์‚ฌ์šฉ์ž(๋งˆ์ผ€ํŒ… ํŒ€ ๋“ฑ)์ด SQL์„ ์•Œ์•„์•ผ๋จ

 

- ์ฟผ๋ฆฌ ํ…œํ”Œ๋ฆฟ : ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ์กด์— ์ƒ์„ฑ๋œ SQL ์ฟผ๋ฆฌ ์„ ํƒ ํ›„ ๊ฒ€์ƒ‰
→ ์งˆ๋ฌธ ์ •ํ˜•ํ™”๋กœ ์ธํ•œ ํšจ์œจ ๊ฐ์†Œ

 

๋„์ž… : LLM ์ž์—ฐ์–ด ๊ฒ€์ƒ‰ ์‹œ์Šคํ…œ

 

๋„์ž… ๊ฐ„ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ
ํ• ๋ฃจ์‹œ๋„ค์ด์…˜ : AI์˜ ์—‰๋šฑํ•œ ๋Œ€๋‹ต
→ ๋กœ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ํŠน์„ฑ๋ณ„๋กœ ๋ถ„ํ•ด

ex) ๊ฒŒ์ž„์„ “3๊ฐœ์›”์งธ” ์ ‘์†ํ•˜์ง€ “์•Š์€” ํšŒ์›

 

→ ๋ถ„ํ•ดํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒกํ„ฐ DB์— ์ €์žฅํ•˜์—ฌ ํ• ๋ฃจ์‹œ๋„ค์ด์…˜ ๊ฐœ์„ 

3. GraalVM ๋„์ž…์œผ๋กœ JVM ๋ฐฑ์—”๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ๋™ ์ดˆ๊ธฐ ์„ฑ๋Šฅ ๋ฌธ์ œ ํ•ด๊ฒฐํ•˜๊ธฐ

์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ๋™ ์‹œ ํ•ซ์ŠคํŒŸ VM๊ณผ GraalVM ๋น„๊ต
๋‹ค์–‘ํ•œ ์ธก๋ฉด์—์„œ ๋น„๊ตํ–ˆ์ง€๋งŒ, GraalVM์ด ํ•ญ์ƒ ์šฐ์ˆ˜ํ•˜์ง€ ์•Š๋‹ค

 

๊ฒฐ๋ก  :

์ดˆ๊ธฐ ๊ฐ€๋™์‹œ์—๋Š” ์†๋„๊ฐ€ ๋น ๋ฅด์ง€๋งŒ, ๊ตฌ๋™ ์ดํ›„ ์ผ์ • ์‹œ์ ๋ถ€ํ„ฐ ํ•ซ์ŠคํŒŸVM๋ณด๋‹ค ๋Š๋ฆฌ๊ฑฐ๋‚˜ ๋น„์Šทํ•œ ์†๋„๋ฅผ ๋ณด์ธ๋‹ค

4.์นด์นด์˜คํŽ˜์ด๋Š” ์–ด๋–ป๊ฒŒ ์ˆ˜์ฒœ๋งŒ ๊ฒฐ์ œ๋ฅผ ์ฒ˜๋ฆฌํ• ๊นŒ? ์šฐ์•„ํ•œ ๊ฒฐ์ œ ๋ถ„์‚ฐ๋ฝ ๋…ธํ•˜์šฐ

์‚ฌ์šฉ์ž - ๊ณ„์ขŒ - ์€ํ–‰ ๊ตฌ์กฐ๋กœ ๋œ ๊ฒฐ์ œ ๊ตฌ์กฐ์—์„œ, ์‚ฌ์šฉ์ž์™€ ์€ํ–‰์ด ๋™์‹œ์— ๊ณ„์ขŒ์™€ ํ†ต์‹ ํ•˜๋Š” ๊ฒฝ์šฐ
→ ๋™์‹œ์„ฑ ํ†ต์‹ ์„ ํ•˜๋ฉด ๊ณ„์ขŒ ์ž”์•ก์ด ๊ผฌ์ด๊ฒŒ ๋œ๋‹ค.

→ ๋ฝ์˜ ํ•„์š”์„ฑ ๋Œ€๋‘ : ์–ด๋Š ํ•œ ์ชฝ์˜ ๊ฑฐ๋ž˜๊ฐ€ ์ง„ํ–‰๋˜๋Š” ๋™์•ˆ, ๋‹ค๋ฅธ ์ชฝ์˜ ๊ฑฐ๋ž˜๋Š” ๋ฝ์„ ๊ฑธ์–ด ๋ง‰๋Š”๋‹ค.

 

๋‹ค๋งŒ, ์†๋„๊ฐ€ ๋งค์šฐ ๋Š๋ ค์ง€๊ฒŒ ๋œ๋‹ค

 

๋ถ„์‚ฐ๋ฝ ๊ตฌํ˜„
Redis๋ฅผ ์‚ฌ์šฉํ•œ ๋ถ„์‚ฐ๋ฝ ๊ตฌํ˜„ : Redission ~ ๋ ˆ๋””์Šค ๋ถ„์‚ฐ๋ฝ
Spring AOP๋ฅผ ์ด์šฉํ•ด ๊ตฌํ˜„ ~ ์ฝ”๋“œ๋Š” ์ถ”ํ›„ ๊ณต๊ฐœ๋˜๋Š” ์˜์ƒ์— ์ฒจ๋ถ€๋จ
Spring AOP๋ฅผ ํ†ตํ•˜๋ฉด ๋ถˆํ•„์š”ํ•œ ๋ฝ์ด ์•ฝ 1์ดˆ๊ฐ€ ๋” ๋ฐœ์ƒํ•˜์ง€๋งŒ, ๊ฑฐ๋ž˜๊ฐ€ ์ฒœ๋งŒ๊ฑด์ด๋ฉด ๊ทธ๋งŒํผ ๋” ๋Š๋ ค์ง„๋‹ค

 

ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ์‚ฌ์šฉํ•œ ๊ตฌํ˜„
cf) ์ฃผ๋กœ ์ฝ”๋“œ๋ฅผ ๋ณด์—ฌ์ค€ ์„ธ์…˜์ด์–ด์„œ ์ถ”ํ›„ ์„ธ์…˜์—์„œ ๋ณด๋‹ค ์ž์„ธํ•œ ๋‚ด์šฉ์ด ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

5. ์นด์นด์˜ค ๋นŒ๋ง MySQL DB ์ƒค๋”ฉ ์ ์šฉ

์นด์นด์˜ค ๋นŒ๋ง ์„œ๋น„์Šค๋Š” PG์‚ฌ์˜ ์•ž๋‹จ์—์„œ. ์„œ๋น„์Šค์™€ ERP ์‚ฌ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์ผ์„ ํ•œ๋‹ค

 

→ ์™ธ๋ถ€ ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋งŽ๊ณ , ๋ฏผ๊ฐ์ •๋ณด ์ทจ๊ธ‰, ๊ทœ์ œ ๋ฐ ๊ฐ์‚ฌ๊ฐ€ ๋งŽ๋‹ค ~ ์ž‘์—…์˜ ๋‚œ์ด๋„๊ฐ€ ๋†’๋‹ค

 

๊ฒฐ์ œ ๊ฑด์ˆ˜๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ๊ฐ€์šด๋ฐ ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ๋นŒ๋งDB ํ•˜๋‚˜์—์„œ๋งŒ ์ฒ˜๋ฆฌํ–ˆ๋˜ ๊ธฐ์กด ๊ตฌ์กฐ

 

→ 2021๋…„ ๋นผ๋บด๋กœ ๋ฐ์ด์— DB ๋‹ค์šด

 

์šฉ๋Ÿ‰ ๋ถ€์กฑ
ํ•˜๋‚˜์˜ ์„œ๋น„์Šค์—์„œ ์žฅ์•  ๋ฐœ์ƒ ์‹œ, ๋‹ค๋ฅธ ์„œ๋น„์Šค๋„ ๊ฐ™์€ ๋นŒ๋ง DB๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์žฅ์•  ์ „ํŒŒ

 

๋Œ€์•ˆ : ์ƒค๋”ฉ

→ ํ•ด์‹œ ๊ธฐ๋ฐ˜ ์ƒค๋”ฉ, ๋ฒ”์œ„ ๊ธฐ๋ฐ˜ ์ƒค๋”ฉ์„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ ˆ๋ฒจ์—์„œ ๊ตฌํ˜„

 

๋ฌธ์ œ์  :

์ƒค๋”ฉ ํ›„ ๋ฐ์ดํ„ฐ ์žฌ๋ฐฐ์น˜

 

๋Œ€์‘:

๊ธฐ์กด Auto Increment PK๊ฐ’์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒค๋”ฉ ์ง„ํ–‰

PK ํŠน์ • ์ž๋ฆฌ ์ˆ˜ ๊นŒ์ง€ ์ƒค๋”ฉ ๊ตฌ๋ถ„์— ํ•„์š”ํ•œ ๊ฐ’ ์„ค์ •

 

์•„ํŒŒ์น˜ ์ƒค๋”ฉ ์Šคํ”ผ์–ด ํ”„๋ก์‹œ๋ฅผ ํ™œ์šฉํ•ด ์–ด๋“œ๋ฏผ ๋ณ€๊ฒฝ ์ตœ์†Œํ™”
๋™์  ์ƒค๋”ฉ : ํŠน์ • ์ด๋ฒคํŠธ(์žฅ์• , ์„œ๋น„์Šค ๊ฐ„ ํŠธ๋ž˜ํ”ฝ ์ฐจ์ด ๋ฐœ์ƒ ๋“ฑ) ๋ฐœ์ƒ ์‹œ
์ƒค๋“œ๋ฅผ ํ• ๋‹น

728x90