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

๐Ÿ–Œ DevLog28

[ํŠธ๋ ˆ๋ฐ”๋ฆฌ] ๋‹ค์–‘ํ•œ Type ์˜ Notification ์ „์†ก ์‹œ์Šคํ…œ์ธ Notifier ํ”„๋กœ์ ํŠธ๋ฅผ ํšŒ๊ณ ํ•˜๋ฉฐ ๋ชฉ์ฐจ ๋‚˜๋Š” ๋ฌด์—‡์„ ํšŒ๊ณ ํ•˜๋Š”๊ฐ€ ๋‚˜์—๊ฒŒ ์นญ์ฐฌํ•œ๋‹ค (Keep) ๊ธฐ์ˆ ์ ์ธ ๋ฐฐ์›€ ๋ฌด์—‡์ด ๋ฌธ์ œ์˜€๋Š”๊ฐ€? (Problem) ๋‹ค์Œ ํ”„๋กœ์ ํŠธ์—์„œ๋Š”? (Try) ๋‚˜๋Š” ๋ฌด์—‡์„ ํšŒ๊ณ ํ•˜๋Š”๊ฐ€ Notifier AS-IS์™€ TO-BE AS-IS ํŠธ๋ ˆ๋ฐ”๋ฆฌ์˜ ํฌ๋ฃจ๋Š” SMS ๋ฅผ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด์„œ ์ง์ ‘ ์™ธ๋ถ€ SMS ๋ชจ๋“ˆ (Senders, Twillio) ๋ฅผ ์ง์ ‘ ๋“ค์–ด๊ฐ€์„œ ๋ฌธ์ž๋ฅผ ์ „์†กํ•œ๋‹ค. ๋˜ํ•œ Legacy System ์— ์˜ํ•ด ์ „์†ก๋œ ๋ฌธ์ž์— ๋Œ€ํ•œ ํ™•์ธ์„ ์œ„ํ•ด ์ง์ ‘ SMS ๋ชจ๋“ˆ๋กœ ๋“ค์–ด๊ฐ€์„œ ํ™•์ธํ•œ๋‹ค. TO-BE ๋ฌธ์ž๊ฐ€ ์ž˜ ๋ณด๋‚ด์กŒ๋Š”์ง€๋ฅผ ํŠธ๋ ˆ๋ฐ”๋ฆฌ์˜ Admin ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. Notification ์„ ํ•˜๋‚˜์˜ ์‹œ์Šคํ…œ์—์„œ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ณ  ์‹คํŒจํ•œ ๋ฉ”์‹œ์ง€๋Š” retry ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ํ•œ๋‹ค. Scheduling ์„ ํ†ตํ•ด ๋ฌธ์ž๋ฅผ ๋ณด๋‚ด๊ณ  State.. 2022. 5. 15.
[ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ณด์•ˆ ์‹ค์Šต ํ”Œ๋žซํผ ๊ฐœ๋ฐœ๊ธฐ] Spring-Boot ์—์„œ OpenFeign ๊ณผ CompletableFuture ๋ฅผ ์ด์šฉํ•œ ๋น„๋™๊ธฐ์  HTTP ์š”์ฒญ ์˜ค๋Š˜์€ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์ƒŒ๋“œ๋ฐ•์Šค ๋ณด์•ˆ ์‹ค์Šต ํ”Œ๋žซํผ-github ๋ฐ”๋กœ๊ฐ€๊ธฐ ๊ฐœ๋ฐœ์„ ํ•˜๋ฉฐ ์‚ฌ์šฉํ–ˆ๋˜ OpenFeign ๊ณผ CompletableFuture์˜ ์‚ฌ์šฉ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•ด๋ณด๋ ค ํ•œ๋‹ค. ๋ชฉ์ฐจ ๋ฐฐ๊ฒฝ ๊ธฐ์ˆ  ์„ ์ • HTTP Client ์˜ ์„ ์ • ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ• ํ›„๊ธฐ ์žฅ๋‹จ์  ๋ฐœ์ „ ๊ฐ€๋Šฅ ์‚ฌํ•ญ ๋ฐฐ๊ฒฝ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ณด์•ˆ ์‹ค์Šต ํ”Œ๋žซํผ์„ ๊ฐœ๋ฐœํ•˜๋ฉฐ ๋‚ด๊ฐ€ ๊ตฌํ˜„ํ•ด์•ผํ•˜๋Š” feature ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์•˜๋‹ค. 1. ๊ฐ•์‚ฌ๋Š” ํด๋ž˜์Šค(์ˆ˜์—…)์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ํ•˜๋‚˜์˜ ํด๋ž˜์Šค(์ˆ˜์—…)์ด ์ƒ์„ฑ๋˜๋ฉด ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉ๋  ์‹ค์Šต Computing Engine ์„ ํ• ๋‹น๋ฐ›๋Š”๋‹ค. 2. ํ•™์ƒ์€ ํด๋ž˜์Šค(์ˆ˜์—…)์— ์ดˆ๋Œ€๋˜๋ฉด ์‹ค์Šต Computing Engine ์„ ํ• ๋‹น๋ฐ›๋Š”๋‹ค. 3. ๊ฐ•์‚ฌ๋Š” ์ˆ˜์—… ๋„์ค‘ ํ•™์ƒ๋“ค์˜ ์ปจํ…Œ์ด๋„ˆ์— ์žˆ๋Š” ์›น์„œ๋ฒ„์™€ ํ†ต์‹ ์„ ์ˆ˜ํ–‰ํ•ด์„œ ํ•™์ƒ๋“ค์˜ ์‹ค์Šต ์ƒํ™ฉ์„ ํ™•์ธ.. 2022. 1. 5.
[ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋ณด์•ˆ ์‹ค์Šต ํ”Œ๋žซํผ ๊ฐœ๋ฐœ๊ธฐ] aws-cli ๋ฅผ ์ด์šฉํ•œ ํด๋ผ์šฐ๋“œ ์ž์› ๊ด€๋ฆฌ ์˜ค๋Š˜์€ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์ƒŒ๋“œ๋ฐ•์Šค ๋ณด์•ˆ ์‹ค์Šต ํ”Œ๋žซํผ-github ๋ฐ”๋กœ๊ฐ€๊ธฐ ๊ฐœ๋ฐœ์„ ํ•˜๋ฉฐ ์‚ฌ์šฉํ–ˆ๋˜ aws-cli์˜ ๊ฒฝํ—˜์„ ๊ณต์œ ํ•ด๋ณด๋ ค ํ•œ๋‹ค. ๋ชฉ์ฐจ ๋ฐฐ๊ฒฝ ๊ธฐ์ˆ  ์„ ์ • ๊ธฐ์ˆ  ํ›„๋ณด๊ตฐ์˜ ๋น„๊ต ๊ธฐ์ˆ  ์„ ํƒ ๋„์ž… cli ํ”„๋กœ์„ธ์Šค๋ฅผ ์ƒ์„ฑํ•  ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ณ ๋ฏผ cli-command ๋ฅผ ์œ„ํ•œ ๋””์ž์ธ ํŒจํ„ด ํ›„๊ธฐ ๋ฐฐ๊ฒฝ ์šฐ์„  ํ”„๋กœ์ ํŠธ์—์„œ ๋‚ด๊ฐ€ ๊ฐœ๋ฐœํ•ด์•ผํ•˜๋Š” feature ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๊ฐ•์‚ฌ๋Š” ํด๋ž˜์Šค(์ˆ˜์—…)์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ํ•˜๋‚˜์˜ ํด๋ž˜์Šค(์ˆ˜์—…)์ด ์ƒ์„ฑ๋˜๋ฉด ํด๋ž˜์Šค์—์„œ ์‚ฌ์šฉ๋  ์‹ค์Šต Computing Engine ์„ ํ• ๋‹น๋ฐ›๋Š”๋‹ค. ํ•™์ƒ์€ ํด๋ž˜์Šค(์ˆ˜์—…)์— ์ดˆ๋Œ€๋˜๋ฉด ์‹ค์Šต Computing Engine ์„ ํ• ๋‹น๋ฐ›๋Š”๋‹ค. ์ œ์•ฝ: Computing Engine ์€ Farage ๊ธฐ๋ฐ˜ AWS์˜ ECS ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์ด ๊ณผ์ •์—์„œ ๋‚˜๋Š” ๋™์ ์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ.. 2022. 1. 5.
[Best Of the Best ํ™œ๋™๊ธฐ] 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ ํ›„๊ธฐ - ์ธํ”„๋ผ๋ฅผ ๊ฐœ๋ฐœํ•˜๋ฉฐ ํ–ˆ๋˜ ๊ณ ๋ฏผ๋“ค ์˜ค๋Š˜์€ BoB 10๊ธฐ ๋ณด์•ˆ์ œํ’ˆ๊ฐœ๋ฐœ ํŠธ๋ž™์˜ ๋ณด์•ˆ ์†”๋ฃจ์…˜ ์ œ์ž‘ ์ˆ˜์—…์—์„œ ํ•œ๋‹ฌ๋™์•ˆ ์ง„ํ–‰ํ•œ 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐํ•ด๋ณด๋ ค ํ•œ๋‹ค. ํ•ด๋‹น ๊ธ€์€ ์ด 2๋ถ€์ž‘์œผ๋กœ ํŒ€ ๋นŒ๋”ฉ๊ณผ ํ˜‘์—… ๊ณผ์ • ๊ทธ๋ฆฌ๊ณ  ์„œ๋น„์Šค ์„ค๋ช… ๋ฐ ๊ฐœ๋ฐœ ๊ณผ์ • ์œผ๋กœ ๋‚˜๋‰˜์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ ํŒ€ ๋นŒ๋”ฉ ๋ฐ ํ˜‘์—…์˜ ๊ณ ๋ฏผ๋“ค 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๊ฐœ๋ฐœํ•˜๋ฉฐ ํ–ˆ๋˜ ๊ณ ๋ฏผ๋“ค 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ ๋ฐฑ์—”๋“œ๋ฅผ ๊ฐœ๋ฐœํ•˜๋ฉฐ ํ–ˆ๋˜ ๊ณ ๋ฏผ๋“ค 1์ฐจ ํŒ€ ํ”„๋กœ์ ํŠธ ์ธํ”„๋ผ๋ฅผ ๊ฐœ๋ฐœํ•˜๋ฉฐ ํ–ˆ๋˜ ๊ณ ๋ฏผ๋“ค ํ”„๋กœ์ ํŠธ github ๋ฐ”๋กœ๊ฐ€๊ธฐ -> ๋ณด์•ˆ ์œ„ํ˜‘ ํŠธ๋ž˜ํ”ฝ ๋ถ„์„ ์†”๋ฃจ์…˜ github GitHub - dhslrl321/L7-monitor: ๐Ÿ” L7 ์—์„œ ๋™์ž‘ํ•˜๋Š” Access Log ๊ธฐ๋ฐ˜ ํŠธ๋ž˜ํ”ฝ ๋ถ„์„ ๋ฐ ๋ณด์•ˆ ์œ„ํ˜‘ ๋ถ„์„ ์„œ๋น„์Šค ๐Ÿ” L7 ์—์„œ ๋™์ž‘ํ•˜๋Š” Access Log ๊ธฐ๋ฐ˜ ํŠธ๋ž˜ํ”ฝ ๋ถ„์„ .. 2021. 8. 25.