728x90
[2025 OSSCA ์ฐธ์—ฌํ˜•] 1. Challenges ๊ธฐ๊ฐ„๊ณผ Masters ์ฐธ๊ฐ€ ์„ ์ •

Challenges ๊ธฐ๊ฐ„- ๊ธฐ๊ฐ„ : 7์›” 12์ผ(ํ† ) ~ 8์›” 15์ผ(๊ธˆ)- ๋ฉ˜ํ‹ฐ ์ค‘๊ฐ„๋ณด๊ณ  ์ž‘์„ฑ : ~ 8์›” 10์ผ (์ผ) ๋ฐฐ์šด์ - PR ์˜ฌ๋ฆฌ๊ณ  ๋ฆฌ๋ทฐํ•˜๋Š” ๊ณผ์ •- ์˜คํ”ˆ์†Œ์Šค ์ƒํƒœ๊ณ„ ํŠนํžˆ ๋ฒˆ์—ญ ์ƒํƒœ๊ณ„์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ์•ˆ ์ด๋ฃฌ๊ฒƒ- ๋ฒˆ์—ญ 2๊ฑด : ์ž๊ฐ€ ์น˜์œ (self-healing) ๋ฌธ์„œ ํ•œ๊ธ€ ๋ฒˆ์—ญ ๊ธฐ์—ฌ, Quota API Object ๋ฌธ์„œ ํ•œ๊ธ€ ๋ฒˆ์—ญ ๊ธฐ์—ฌ - ๋ฒˆ์—ญ ๊ด€๋ฆฌ ์ƒํƒœ๊ณ„ ๊ธฐ์—ฌ 1๊ฑด : ์˜๋ฌธ ์˜ˆ์ œ ํŒŒ์ผ์„ fallback์œผ๋กœ ์ฐธ์กฐํ•˜๋„๋ก ๋กœ์ง ๊ฐœ์„ , ๋นŒ๋“œ ์˜ค๋ฅ˜ ๋ฐฉ์ง€ ๋ฐ ์œ ์ง€๋ณด์ˆ˜์„ฑ ํ–ฅ์ƒ- ์˜คํ”ˆ์†Œ์Šค์ปจํŠธ๋ฆฌ๋ทฐ์…˜ ์•„์นด๋ฐ๋ฏธ๋“ค์˜ ๋ฒˆ์—ญ ๊ด€๋ จ ๋ฆฌ๋ทฐ๋ฅผ ์ด๋”ํŒจ๋“œ์— ๋ชจ์•„ ํ•„์š”ํ•˜๋‹ค๋ฉด ํ•œ ๋ฒˆ์— ํ•œ๊ธ€ํ™” ๋ฌธ์„œ๋ฅผ ์—…๋ฐ์ดํŠธ ํ•  ์˜ˆ์ •์ด๋‹ค. + ์˜์–ด ํ† ์ต ์ ์ˆ˜๊ฐ€ ํ–ฅ์ƒ ๋˜์—ˆ๋‹ค

๐Ÿ’กInsight/ํšŒ๊ณ -์—ฐ๊ฐ„_ํ”„๋กœ์ ํŠธ_ํŠน๋ณ„ํ•œ์ผ 2025. 9. 3. 22:37

๋‘์„œ์—†์ด ์ ์–ด๋ณด๋Š” ์š”์ฆ˜์— ๋Œ€ํ•œ ํšŒ๊ณ 

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

๐Ÿ’กInsight/ํšŒ๊ณ -์›”๊ฐ„ 2025. 8. 18. 20:57

[์ฟ ๋ฒ„๋„คํ‹ฐ์Šค] Self-healing ์š”์•ฝ

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์ž๊ฐ€ ์น˜์œ (Self-healing)์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์˜ ์ž๊ฐ€ ์น˜์œ ๋Š” ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์›Œํฌ๋กœ๋“œ์˜ ์›ํ•˜๋Š” ์ƒํƒœ(desired state) ๋ฅผ ์ž๋™์œผ๋กœ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ์žฅ์• ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ ์ด๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  ๋ณต๊ตฌํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋งํ•œ๋‹ค.์ฃผ์š” ๋ชฉ์ ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค์˜ ๊ฐ€์šฉ์„ฑ๊ณผ ์•ˆ์ •์„ฑ์„ ์ตœ๋Œ€ํ•œ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ์ด๋‹ค.์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ์šด์˜์ž๊ฐ€ ์ฆ‰์‹œ ๊ฐœ์ž…ํ•˜์ง€ ์•Š์•„๋„ ์ž๋™์œผ๋กœ ๋ณต๊ตฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด SLA(Service Level Agreement) ๋ฅผ ์ค€์ˆ˜ํ•˜๊ณ  ๋‹ค์šดํƒ€์ž„์„ ์ตœ์†Œํ™”ํ•œ๋‹ค. ์ฃผ์š” ๊ธฐ๋Šฅ1. ์ปจํ…Œ์ด๋„ˆ ๋‹จ์œ„ ์žฌ์‹œ์ž‘์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋น„์ •์ƒ ์ข…๋ฃŒ๋˜๋ฉด restartPolicy์— ๋”ฐ๋ผ ์ž๋™ ์žฌ์‹œ์ž‘ํ•œ๋‹ค 2. ๋ ˆํ”Œ๋ฆฌ์นด ๊ต์ฒดDeployment/StatefulSet์—์„œ ํŒŒ๋“œ๊ฐ€ ์ข…๋ฃŒ๋˜๋ฉด ์ƒˆ ํŒŒ๋“œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์›ํ•˜๋Š” ๋ ˆํ”Œ๋ฆฌ์นด ์ˆ˜๋ฅผ ์œ ์ง€ํ•˜..

๐Ÿ˜Ž ์ง€์‹ in Action/โ˜๏ธ ๐Ÿ–ฅ๏ธ 2025. 8. 12. 20:52

[Git] branch : ๋กœ์ปฌ, ๋ฆฌ๋ชจํŠธ, ํŠธ๋ž˜ํ‚น ๋ธŒ๋žœ์น˜

๋กœ์ปฌ, ๋ฆฌ๋ณดํŠธ, ํŠธ๋ž˜ํ‚น ๋ธŒ๋žœ์น˜ ๋น„๊ต ํ‘œ ๋กœ์ปฌ ๋ธŒ๋žœ์น˜master๋‚ด PCO๋‚ด๊ฐ€ ์ž‘์—…ํ•˜๋Š” ๋ธŒ๋žœ์น˜๋ฆฌ๋ชจํŠธ ๋ธŒ๋žœ์น˜master (๋ฆฌ๋ชจํŠธ ์ €์žฅ์†Œ)์›๊ฒฉ ์ €์žฅ์†ŒO (์›๊ฒฉ ๊ถŒํ•œ ํ•„์š”)์„œ๋ฒ„์— ์กด์žฌํ•˜๋Š” ๋ธŒ๋žœ์น˜๋ฆฌ๋ชจํŠธ ํŠธ๋ž˜ํ‚น ๋ธŒ๋žœ์น˜origin/master๋‚ด PCX (์ง์ ‘ ์ˆ˜์ • ๋ถˆ๊ฐ€)๋ฆฌ๋ชจํŠธ ๋ธŒ๋žœ์น˜์˜ ๋งˆ์ง€๋ง‰ ์ƒํƒœ๋ฅผ ๋กœ์ปฌ์— ๊ธฐ๋กํ•œ ‘๋ถ๋งˆํฌ’ fetch, pull, push (1) git fetch origin๋กœ์ปฌ : origin/master ํฌ์ธํ„ฐ ์ด๋™๋ฆฌ๋ชจํŠธ: ๋ณ€ํ™” ์—†์Œ(2) git pull๋กœ์ปฌ : fetch + ํ˜„์žฌ ๋ธŒ๋žœ์น˜์— merge๋ฆฌ๋ชจํŠธ: ๋ณ€ํ™” ์—†์Œ(3) git push๋กœ์ปฌ : ๋ณ€ํ™” ์—†์Œ๋ฆฌ๋ชจํŠธ: ๋ฆฌ๋ชจํŠธ ๋ธŒ๋žœ์น˜ ์ปค๋ฐ‹ ์—…๋ฐ์ดํŠธ Tracking ๋ธŒ๋žœ์น˜ : ํŠน์ • ๋ฆฌ๋ชจํŠธ ๋ธŒ๋žœ์น˜๋ฅผ ์ž๋™์œผ๋กœ ๋ฐ”๋ผ๋ณด๋Š” ๋กœ์ปฌ ๋ธŒ๋žœ์น˜ # ์ƒˆ ๋ธŒ๋žœ์น˜ ๋งŒ๋“ค ..

๐Ÿ˜Ž ์ง€์‹ in Action/Git, Jira ๐Ÿ› ๏ธ 2025. 8. 9. 20:13

[maven] Maven Shade Plugin ๋กœ fat jar ๋งŒ๋“ค๋•Œ rewrite, transformers, filters ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค

Maven Shade Plugin ์ค‘๋ณต ๋ฆฌ์†Œ์Šค ์ฒ˜๋ฆฌ ์›๋ฆฌMaven Shade Plugin์€ ์—ฌ๋Ÿฌ JAR๋ฅผ ํ•ฉ์ณ ํ•˜๋‚˜์˜ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ Fat JAR๋กœ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ(target/classes) + ์˜์กด์„ฑ JAR๋“ค ์•ˆ์˜ ํด๋ž˜์Šค/๋ฆฌ์†Œ์Šค ํŒŒ์ผ์„ ๋ชจ๋‘ ํ•˜๋‚˜์˜ JAR์— ๋ณต์‚ฌํ•œ๋‹ค ๋™์ผํ•œ ๊ฒฝ๋กœ๋ฅผ ๊ฐ€์ง„ ํŒŒ์ผ์ด ์—ฌ๋Ÿฌ JAR์— ์žˆ์‘๋ฉด ์ค‘๋ณต ๊ฒฝ๊ณ ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๊ณ  ์ค‘๋ณตํ•ด๊ฒฐ์„ ์œ„ํ•ด rewrite(๋งˆ์ง€๋ง‰ ํŒŒ์ผ๋งŒ ํฌํ•จํ•˜๋„๋ก ๋ฎ์–ด์“ฐ๊ธฐ), transformers(ํ•ฉ์น˜๊ธฐ), filters(์ œ์™ธํ•˜๊ธฐ) ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•œ๋‹ค์ฆ‰, ์ง์ ‘ ์–ด๋–ค ํŒŒ์ผ์„ ํ•ฉ์น ์ง€ ๋ฒ„๋ฆด์ง€ ์ •ํ•ด์•ผ ์•ˆ์ „ํ•˜๊ฒŒ fat jar๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค ์ค‘๋ณต ์ฒ˜๋ฆฌ ๋ฐฉ์‹transformers(1) META-INF/services/*๋Œ€ํ‘œ์ ์œผ๋กœ Spring Boot์—์„œ META-INF/spring..

๐Ÿœ๊ฐœ๋ฐœ์ž๋ผ๋ฉด/์—๋Ÿฌ - ๋‹ด์—๋Š” ๋น ๋ฅด๊ฒŒ ํ—ค์–ด์ง€์ž๐ŸŽ 2025. 8. 2. 23:58

728x90