Loading...
2020. 1. 8. 12:14

[MSA] - 2. API Gateway๊ฐ€ ํ•„์š”ํ•œ ์ด์œ 

์•ˆ๋…•ํ•˜์„ธ์š”. ์ด๋ฒˆ ๊ธ€์€ MSA์— ๋Œ€ํ•œ ๊ธ€์„ ์ด์–ด์„œ API Gateway์— ๋Œ€ํ•œ ์ด์•ผ๊ธฐ๋ฅผ ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ง€๋‚œ MSA ๊ธ€์—์„œ๋Š” MSA๋ฅผ ์™œ ์จ์•ผํ•˜๋Š”์ง€, ์–ด๋–จ ๋•Œ ํ•„์š”ํ•˜๊ณ , ๋ฌด์Šจ ์žฅ๋‹จ์ ์ด ์žˆ๋Š”์ง€๋ฅผ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค๋ช…ํ•ด๋ณด๋Š” ์•„์ฃผ ์‰ฌ์šด ์ด์•ผ๊ธฐ๋ฅผ ๋‹ค๋ค„๋ดค์Šต๋‹ˆ๋‹ค. ์‚ฌ์‹ค MSA์˜ ๊นŠ์ด๋Š” ๊ทธ๊ฒƒ๋ณด๋‹ค ๊นŠ๊ธฐ ๋•Œ๋ฌธ์— ์ œ๋Œ€๋กœ ์ด์•ผ๊ธฐ๋ฅผ ํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด, ๋งŽ์€ ์ด์•ผ๊ธฐ๊ฐ€ ๋  ๊ฒƒ ๊ฐ™์•„ ์งง๊ฒŒ ํ•„์š”ํ•œ ๋ถ€๋ถ„์„ ์„ค๋ช…๋“œ๋ฆฐ ๊ฒƒ์ด๊ตฌ์š”. ํƒ€ ๊ธ€์—์„œ ์ข€ ๋” ์‹ฌ์ธต์ ์œผ๋กœ ๋‹ค๋ค„๋ณผ๊นŒ ํ•ฉ๋‹ˆ๋‹ค. Spring Cloud๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ„๋‹จํžˆ API๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์•Œ์•˜๊ณ , ์ด์™€ ๋น„์Šทํ•˜๊ฒŒ Python์˜ Django, Flask ๋“ฑ ํƒ€ ์–ธ์–ด, ํƒ€ ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ๋„ ์–ด๋–ป๊ฒŒ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๊ฐ์ด ์žกํ˜”์„ ๊ฒƒ์ด๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ์ด๋“ค API๋ฅผ ๊ทธ๋ฃนํ™” ์‹œ์ผœ์ฃผ๋Š” API Gateway..

2019. 12. 31. 15:05

Neon K.I.D์˜ 2019๋…„

์–ด๋Š ๋ง 2019๋…„๋„ ๋งˆ์ง€๋ง‰ ๋‚ ์ด ๋‹ค๊ฐ€์™”๋„ค์š”. ๋ญ ํ•ญ์ƒ ๋‚˜์˜ ๊ฐœ๋ฐœ์ผ์ง€๋ฅผ ์ ์œผ๋ฉด, ์˜ฌํ•ด๋“  ๋‚ด๋…„์ด๋“  ๋น„์Šทํ•  ๊ฒƒ ๊ฐ™๋‹ค. ๋ผ๋Š” ๋ง‰์—ฐํ•œ ์ƒ๊ฐ ๋งŽ์ด ํ•˜๋Š”๋ฐ, ์˜ฌํ•ด๋Š” ์œ ๋‚œํžˆ ๋Š๋ผ๋Š” ์ ์ด ๋งŽ์ด ์žˆ์–ด์„œ ์กฐ๊ธˆ ์˜๋ฏธ ์žˆ๋Š” ํšŒ๊ณ ๋ก์ด ๋˜์ง€ ์•Š์„๊นŒ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์˜๋ฃŒ ๋ฐ์ดํ„ฐ์™€ ํ•จ๊ป˜ํ•œ ํ”„๋กœ์ ํŠธ 2019๋…„ 7์›”, ์ €๋Š” 1๋…„์˜ ๊ณ„์•ฝ์ง ์ƒํ™œ์„ ๋งˆ๋ฌด๋ฆฌํ•˜๊ณ , ํ‡ด์‚ฌํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•œ ํ•ด ๋™์•ˆ ๋งŽ์€ ์ผ์„ ํ–ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด๋ง๋ถ€ํ„ฐ ๋จธ์‹  ๋Ÿฌ๋‹๊นŒ์ง€.. ์˜๋ฃŒ ๋ฐ์ดํ„ฐ๋ผ๋Š” ์ˆ˜์ค€ ๋†’์€ ๋‚œ์ด๋„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค๋ค„๋ณด๋ฉฐ ๋น„๋ก 1์ €์ž๊นŒ์ง€๋Š” ์•„๋‹ˆ์ง€๋งŒ ๋…ผ๋ฌธ์— ์ด๋ฆ„์ด ์˜ฌ๋ ค๊ฐ€๊ธฐ๋„ ํ•˜๊ณ , ํ† ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ๋“ฑ์˜ ์„ฑ๊ณผ๊ฐ€ ์žˆ์—ˆ๋„ค์š”. NEONKID/RCDMViewer Radiology CDM Viewer. Contribute to NEONKID/RCDMVi..

2019. 12. 29. 13:47

[Spring Cloud] - 3. API ์„œ๋ฒ„๋กœ ์„ค์ • ๊ฐ’ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ

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

2019. 12. 26. 13:26

[Spring Cloud] - 2. Github and Configuration Server

์•ˆ๋…•ํ•˜์„ธ์š”. ์ง€๋‚œ ์‹œ๊ฐ„์—๋Š” Spring Cloud์˜ Configuration Server๋ฅผ ๋กœ์ปฌ ํ™˜๊ฒฝ์˜ ์„ค์ • ํŒŒ์ผ์„ ํ†ตํ•˜์„œ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ดค์Šต๋‹ˆ๋‹ค. ๋กœ์ปฌ ๋‚ด์— ์žˆ๋Š” ์„ค์ • ํŒŒ์ผ์„ ์ง์ ‘ ์ž‘์„ฑํ•˜์—ฌ ์ด๋ฅผ Pull ๋ฐฉ์‹์œผ๋กœ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณ„๋„์˜ ๊ตฌ์„ฑ ์„œ๋ฒ„๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ํšจ์œจ์ ์œผ๋กœ ์„œ๋ฒ„์˜ ๊ตฌ์„ฑ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๊ณ  ์ƒˆ๋กœ์ด ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ์—ฌ๊ธฐ์— Git์„ ์ถ”๊ฐ€ํ•œ๋‹ค๋ฉด ์–ด๋–จ๊นŒ์š”? ๊ธฐ์กด์˜ ์„ค์ •์—์„œ ์ƒˆ๋กœ์šด ์„ค์ •์œผ๋กœ ๋ณ€๊ฒฝํ•œ ๋’ค, ์–ด๋– ํ•œ ๋ฌธ์ œ์ ์ด ์ƒ๊ฒผ๋‹ค๊ฑฐ๋‚˜ ์ด์Šˆ๊ฐ€ ๋ฐœ์ƒ๋œ๋‹ค๋ฉด ๋กค๋ฐฑ์„ ํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ ๋กค๋ฐฑ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ Volume Shadow Copy ์ •๋„๋‚˜ ํ˜น์€ RAID ๋ ˆ๋ฒจ์—์„œ ์ œ๊ณตํ•˜๋Š” Snapshot, BRTFS์—์„œ ์ œ๊ณตํ•˜๋Š” Snapshot์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ..

2019. 12. 22. 12:39

[Spring Cloud] - 1. Configuration Server ๊ตฌ์„ฑ

์ง€๋‚œ ๊ธ€์—์„œ MSA(Micro Service Architecture)์— ๋Œ€ํ•œ ๊ธฐ๋ณธ์ ์ธ ๋‚ด์šฉ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ดค์—ˆ๋Š”๋ฐ์š”. ํ˜น์‹œ๋ผ๋„ ์ด ๊ธ€์„ ์ฝ์–ด๋ณด์ง€ ๋ชปํ–ˆ๋‹ค๋ฉด, ์•„๋ž˜์˜ ๋งํฌ๋ฅผ ํ†ตํ•ด์„œ ์ง์ ‘ ์ฝ์–ด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. MSA (Micro Service Architecture) ๋ž€ ๋ฌด์—‡์ผ๊นŒ? ์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ Micro Service Architecture์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ ํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ํ•œ๋™์•ˆ MSA๊ฐ€ ๊ต‰์žฅํžˆ ํ™”๋‘์˜€๋Š”๋ฐ, ์š”์ฆ˜์€ ๋ถ„์œ„๊ธฐ๊ฐ€ ์‹์–ด์ง€๋Š” ๋“ฏํ•˜์—ฌ ์˜ค๋Š˜ ๋ธ”๋กœ๊ทธ์— ์ด ๊ธ€์„ ์ ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ.. blog.neonkid.xyz ์ด๋ฒˆ ํŒŒํŠธ์—์„œ๋Š” Java ์–ธ์–ด์˜ ์›น ๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ์ธ Spring์„ ์ด์šฉํ•ด์„œ ์ด Micro Service Architecture๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ..

2019. 12. 5. 12:00

MSA (Micro Service Architecture) ๋ž€ ๋ฌด์—‡์ผ๊นŒ?

์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ Micro Service Architecture์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ ํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ํ•œ๋™์•ˆ MSA๊ฐ€ ๊ต‰์žฅํžˆ ํ™”๋‘์˜€๋Š”๋ฐ, ์š”์ฆ˜์€ ๋ถ„์œ„๊ธฐ๊ฐ€ ์‹์–ด์ง€๋Š” ๋“ฏํ•˜์—ฌ ์˜ค๋Š˜ ๋ธ”๋กœ๊ทธ์— ์ด ๊ธ€์„ ์ ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด์„œ Spring, Django ๋“ฑ ๋‹ค์–‘ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์„ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋ณดํ†ต ์ด๋“ค ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ด์šฉํ•ด์„œ ํŠน์ • ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” API๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ๊ฐœ๋ฐœํ•˜์—ฌ ์„œ๋น„์Šคํ•˜๋Š” ๊ฒƒ์ด ๊ธฐ๋ณธ ํ˜•ํƒœ์ด์ฃ . ์ด๋ ‡๊ฒŒ UI, ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง, ๋ฐ์ดํ„ฐ ๋ ˆ์ด์–ด๊นŒ์ง€ ๋ชจ๋“  ๊ฒƒ์„ ํ•œ ํ†ต ์†์—์„œ ์šด์˜ํ•˜๋Š” ๋ฐฉ์‹์„ ๋ชจ๋†€๋ฆฌํ‹ฑ ์•„ํ‚คํ…์ฒ˜๋ผ๊ณ  ์ด์•ผ๊ธฐ ํ•ฉ๋‹ˆ๋‹ค. ํ”ํžˆ ํ•™๋ถ€์—์„œ ์šด์˜์ฒด์ œ ๊ณผ๋ชฉ์„ ์ˆ˜๊ฐ•ํ•ด๋ณด์‹  ๋ถ„๋“ค์ด๋ผ๋ฉด, ๋ชจ๋†€๋ฆฌํ‹ฑ ์ปค๋„์ด๋ผ๋Š” ๋‹จ์–ด๋ฅผ ๋“ค์–ด๋ณด์…จ์„ํ…๋ฐ, ๊ฑฐ๊ธฐ์—์„œ ๋‚˜์˜ค๋Š” ๋ชจ๋†€๋ฆฌํ‹ฑ๊ณผ ๋™์ผํ•œ ๋‹จ์–ด์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ์ด..

[GP] Spring boot์—์„œ REST API ๊ฐœ๋ฐœ ์‹œ์ž‘ํ•ด๋ณด๊ธฐ

์ด ๊ธ€์€ N.K Dev Lab์—์„œ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์•ˆ๋…•ํ•˜์„ธ์š”. N.K Dev Lab์— ๊ธ€์„ ์•ˆ์“ด์ง€๊ฐ€ ์ •๋ง ์˜ค๋ž˜๋˜์—ˆ๋„ค์š”. ์˜ฌํ•ด๋Š” ์ €์˜ ์ทจ์—… ์‹œ์ฆŒ์ธ ๋งŒํผ ๋ธ”๋กœ๊ทธ์— ๊ธ€์„ ์“ฐ๋Š” ๊ฒƒ์— ๋งŽ์ด ์†Œํ™€ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋”์šฑ์ด Dev Lab ๋ฆฌ๋‰ด์–ผ๊ณผ ๊ด€๋ จํ•˜์—ฌ ์—ฌ๋Ÿฌ ์ผ๋“ค์ด ์žˆ์—ˆ๋Š”๋ฐ, ์ €์˜ Dev Lab์ด ๋‹ค์‹œ Jekyll๋กœ ๋Œ์•„์˜ค๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์œ ๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ์ง€๋งŒ ์ด์ œ ์ œ๊ฐ€ ์ทจ์—…์„ ํ•˜๊ฒŒ ๋˜๋ฉด ํ˜„์žฌ ํ•˜๊ณ  ์žˆ๋Š” ์ผ๋“ค์„ ์กฐ๊ธˆ ๋ฏธ๋ฆฌ ๊ฐ„์†Œํ™” ํ•˜๋Š” ์ž‘์—…์ด๋ผ๊ณ  ๋ณด์‹œ๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•œ ๊ฐ€์ง€ ์˜ˆ๋ฅผ ๋“ค์–ด, ์ด์ œ Dev Lab์— ์˜ฌ๋ฆฌ๋Š” ๊ธ€์€ ์ €์˜ ์†์— ์˜ํ•ด ์ˆ˜๋™์œผ๋กœ NKLAB(Tistory)์— ๊ฒŒ์‹œ๋˜์ง€ ์•Š๊ณ  ์ž๋™ํ™” ๋œ ์ฝ”๋“œ์— ์˜ํ•ด์„œ ์˜ฌ๋ผ๊ฐ€๊ฒŒ ๋˜๋Š” ์ž‘์—… ๋“ฑ Hugo ๋ณด๋‹ค๋Š” Jekyll์ด ์ข€ ๋” ํŽธํ•˜๋”๊ตฐ์š”. ๋ณธ๋ก ์œผ๋กœ ๋„˜์–ด๊ฐ€์„œ, ์˜ค๋Š˜์€ Sp..

[GP] Spring boot์—์„œ DBMS๋ฅผ ์—ฐ๋™ํ•˜๋Š” ๋ฐฉ๋ฒ• JPA ๊ณ ๊ธ‰ํŽธ

์ด ๊ธ€์€ N.K Dev Lab์—์„œ ์ž‘์„ฑ๋œ ๊ธ€์ž…๋‹ˆ๋‹ค. ์•ˆ๋…•ํ•˜์„ธ์š”. Spring ๊ด€๋ จ ๊ธ€์„ ์ •๋ง ์•ˆ์“ด์ง€๊ฐ€ ๋„ˆ๋ฌด ์˜ค๋ž˜๋˜์—ˆ๋„ค์š”…ใ… ใ…  ์š”์ฆ˜ ๋ฐ์ดํ„ฐ ๋ถ„์•ผ์—์„œ ์ผํ•˜๋‹ค๋ณด๋‹ˆ R์„ ๋‹ค๋ฃจ๋ฉด์„œ ๋ฐฑ์—”๋“œ์— ๋Œ€ํ•œ ํฌ์ŠคํŒ…์ด ๋งŽ์ด ๋ฐ€๋ ค์žˆ๋„ค์š”.. ์•ž์œผ๋กœ๋Š” Spring์„ ์ด์šฉํ•œ ์˜คํ”ˆ ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌ ์ค‘์ด๋‹ˆ ๋‹ค์‹œ ์žฌ๊ฑด์„ ์œ„ํ•ด์„œ๋ผ๋„ ์ฒœ์ฒœํžˆ ํ•˜๋‚˜์”ฉ ๊ธ€์„ ์ž‘์„ฑํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.์ด๋ฒˆ์—๋Š” ์ง€๋‚œ ๊ธ€์— ์ด์–ด์„œ JPA ๊ณ ๊ธ‰ํŽธ์— ๋Œ€ํ•ด ์ž‘์„ฑํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์›Œ๋‚™ ์˜ค๋ž˜๋์Œ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๊ณ ๊ธ‰ํŽธ์— ๋ฌด์—‡์„ ์ ์–ด์•ผํ• ์ง€ ๋ช…์‹œ๊ฐ€ ๋˜์–ด ์žˆ๋„ค์š”. ์˜ค๋Š˜์€ ๊ทธ ๋ถ€๋ถ„์„ ๋‹ค๋ค„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. SQL๊ณผ HQLSQL์€ Structed Query Language์˜ ์•ฝ์ž๋กœ DBMS์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์ž‘/์ œ์–ดํ•˜๋Š” ์ฟผ๋ฆฌ ์–ธ์–ด ์ค‘์— ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. SQL Server์—์„œ๋Š” T-SQL์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ..

2019. 11. 6. 11:09

Google Colaboratory๋ฅผ ์ด์šฉํ•œ ๋จธ์‹  ๋Ÿฌ๋‹

์•ˆ๋…•ํ•˜์„ธ์š”. ์˜ค๋Š˜์€ ๋จธ์‹  ๋Ÿฌ๋‹ ํ™˜๊ฒฝ ๊ตฌ์ถ•์„ ์ข€ ๋” ์‰ฝ๊ณ , ๋” ์ข‹์€ ํ™˜๊ฒฝ์„ ๋‹ค๋ฆ„ ์•„๋‹Œ ๋ฌด๋ฃŒ๋กœ ์‚ฌ์šฉํ•ด๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋จธ์‹  ๋Ÿฌ๋‹์„ ๋‚ด PC์˜ ํ™˜๊ฒฝ์—์„œ ๊ตฌ์ถ•ํ•˜๋Š” ์ผ์ด๋ž€, ์‚ฌ์‹ค ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ๊ฝค ์˜ค๋ž˜ ์ „์— TensorFlow๋ฅผ GPU ํ™˜๊ฒฝ์—์„œ ๋Œ๋ฆด ์ˆ˜ ์žˆ๋„๋ก Python์˜ Virtualenv์—์„œ TensorFlow๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์˜ฌ๋ ธ์—ˆ๋Š”๋ฐ์š”. ๋ฆฌ๋ˆ…์Šค๋ฅผ ์„ค์น˜ํ•˜๊ณ , Python์„ ์„ค์น˜ํ•˜๊ณ , ๋˜ ๊ทธ์— ํ•„์š”ํ•œ TensorFlow, Virtualenv๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ๋‚˜๋ฉด ์ด์ œ๋Š” GPU ๋“œ๋ผ์ด๋ฒ„๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์˜ค๋ฅ˜๋„ ๋งŽ์ด ๋‚˜๊ณ , ์—ฌ๊ฐ„ ์‰ฝ์ง€ ์•Š์€ ๊ณผ์ •๋“ค์ด ๋ฒŒ์–ด์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ, ์—ฌ๋Ÿฌ๋ถ„๋“ค์ด ์ •๋ง๋กœ ๊ณ ๊ธ‰ ์žฅ๋น„๋ฅผ ๊ฐ€์ง€๊ณ , ์ด๋ฅผ ํ…Œ๋ฉด Tesla 8๊ฐœ๋ฅผ SLI๋กœ ๋ฌถ๋Š”๋‹ค๋˜์ง€, ์ด๋ ‡๊ฒŒ ํ•œ๋‹ค๋ฉด ์œ„ ๊ณผ์ •์„ ์ •๋ง๋กœ ..

2019. 11. 2. 15:42

[React.ts] React๋ฅผ Typescript๋กœ ์‹œ์ž‘ํ•ด๋ณด๊ธฐ - Props, State

์ด๋ฒˆ ๊ธ€์—์„œ๋Š” Props, State๋ฅผ Typescript์—์„œ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”์ง€์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Javascript์—์„œ๋Š” state๋ฅผ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ์„ฑ์ž๋ฅผ ์‚ฌ์šฉํ•˜์˜€๊ณ , ํ•ด๋‹น ์ƒ์„ฑ์ž์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ Props๋ฅผ ๋„ฃ์–ด์ฃผ์—ˆ์œผ๋ฉฐ Props๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋ฉด, ์ปดํฌ๋„ŒํŠธ ์ฝ”๋“œ ๋ฐ‘์— Props ํƒ€์ž…์„ ์ •์˜ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. import React, { Component } from 'react'; class Header extends Component { constructor(props) { super(props); this.state = { ... }; } render() { return ( Practice App ); } } export default Header; ํ•˜์ง€๋งŒ Typescript์—์„œ ์œ„์™€ ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ• ..