MSA | ์„œํ‚ท ๋ธŒ๋ ˆ์ด์ปค (feat. Resilience4j)
ยท
TIL
โ‡๏ธ ์ถ”๊ฐ€ ์ง€์‹ : ์„œํ‚ท๋ธŒ๋ ˆ์ด์ปค(Circuit Breaker) ๊ฐ€ ๋ฌด์—‡์ธ๊ฐ€?๋”๋ณด๊ธฐ์œ ๋ž˜ :   ์ „๊ธฐ ํšŒ๋กœ์—์„œ ๊ณผ์—ด๋œ ํšŒ๋กœ๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ์žฅ์น˜ (a.k.a. ๋‘๊บผ๋น„์ง‘)์“ฐ์ž„ :  ์ฃผ์‹ ์‹œ์žฅ - ์ฃผ๊ฐ€๊ฐ€ ๊ฐ‘์ž๊ธฐ ๊ธ‰๋ฝํ•  ๋•Œ, ์ฃผ์‹๋งค๋งค ์ผ์‹œ ์ •์ง€ํ•˜๋Š” ์ œ๋„  ์†Œํ”„ํŠธ์›จ์–ด - ์žฅ์• ์ „ํŒŒ ์ฐจ๋‹จ์„ ๋ชฉ์ ์œผ๋กœ ์‹œ์Šคํ…œ ๊ฐ„ ์—ฐ๋™์„ ์ฐจ๋‹จํ•˜๋Š” ๊ธฐ์ˆ ์„œ๋กœ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ๋ผ๋ฆฌ ์—ฐ๋™ํ•  ๋•Œ, ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•œ ์„œ๋น„์Šค๋กœ์˜ ์š”์ฒญ์„ ์ผ์‹œ์ ์œผ๋กœ ์ฐจ๋‹จํ•˜์—ฌ, ์žฅ์• ์ „ํŒŒ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š”๊ธฐ์ˆ ๋ชฉ์  : ์‹œ์Šคํ…œ์˜ ์ „์ฒด์ ์ธ ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.๊ธฐ๋Šฅ :์‹œ์Šคํ…œ ์—ฐ๋™ ์‹œ, ํ˜ธ์ถœ ์‹คํŒจ ๊ฐ์ง€์ดํ›„ ํšŒ๋ณต์‹œ, ์ž๋™์œผ๋กœ ์‹œ์Šคํ…œ ์—ฐ๋™ 1. ํด๋กœ์ฆˆ๋“œ (CLOSED)์„œ๋น„์Šค๊ฐ€ ์ •์ƒ ํ˜ธ์ถœ/์‘๋‹ต ๋˜๊ณ  ์žˆ๋Š” ์ƒํƒœ2. ์˜คํ”ˆ (OPEN)๋ฌธ์ œ ๋ฐœ์ƒ์ด ๊ฐ์ง€๋œ ์ƒํƒœ3. ํ•˜ํ”„-์˜คํ”ˆ (HALF_OPEN)์„œ๋น„์Šค๊ฐ€ ์˜คํ”ˆ ์ƒ..
TIL : ๋ฌธ์ž์—ด ์Šฌ๋ผ์ด์‹ฑ ์ธ๋ฑ์Šค ์—๋Ÿฌ, ๋ฆฌ์ŠคํŠธ ์ปดํ”„๋ฆฌํ—จ์…˜
ยท
TIL
๐Ÿ’ก ์Šฌ๋ผ์ด์‹ฑ์€ ์ดˆ๊ณผํ•ด๋„ ์ธ๋ฑ์Šค ๋ฒ”์œ„ ์—๋Ÿฌ๊ฐ€ ๋‚˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค. ์˜คํ•ดํ•˜๊ณ  ์žˆ์—ˆ๋„ค..ใ…Žใ…Ž ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค "์ž˜๋ผ์„œ ๋ฐฐ์—ด๋กœ ์ €์žฅํ•˜๊ธฐ" ๋ฅผ ํ‘ผ ์ฝ”๋“œ์ด๋‹ค. def solution(my_str, n): answer = [] while len(my_str) > 0: # while๋ฌธ ์•ˆ์—์„œ ๋งค๊ฐœ๋ณ€์ˆ˜ my_str์„ n๊ฐœ์”ฉ ์ž˜๋ผ๋‚ผ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— my_str์˜ ๊ธธ์ด๊ฐ€ 0๋ณด๋‹ค ํฐ ๋™์•ˆ๋งŒ ๋ฐ˜๋ณตํ•œ๋‹ค. if len(my_str) > n: # ์ž˜๋ผ๋‚ด๋Š” ๋™์•ˆ my_str์˜ ๊ธธ์ด๊ฐ€ n๋ณด๋‹ค ์ž‘์•„์ง€๋ฉด ์ธ๋ฑ์Šค ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ์กฐ๊ฑด๋ฌธ์œผ๋กœ ์ƒํ™ฉ์„ ๋‚˜๋ˆ ์ค€๋‹ค. answer.append(my_str[:n]) # ์Šฌ๋ผ์ด์‹ฑ์œผ๋กœ n๊ฐœ์”ฉ ์ž๋ฅด๊ธฐ my_str = my_str[n:] # ์Šฌ๋ผ์ด์‹ฑ์œผ๋กœ answer์— ์ถ”๊ฐ€ํ•œ ๋ถ€๋ถ„ ์‚ญ์ œ else: answ..
chrome debugging mode
ยท
TIL
๋””๋ฒ„๊น…(debugging)์ด๋ž€ ์Šคํฌ๋ฆฝํŠธ ๋‚ด ์—๋Ÿฌ๋ฅผ ๊ฒ€์ถœํ•ด ์ œ๊ฑฐํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. chrome์—์„œ ์ œ๊ณตํ•˜๋Š” ๋””๋ฒ„๊น… ํˆด์„ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๊ณ , ์‹คํ–‰ ๋‹จ๊ณ„๋งˆ๋‹ค ์ผ์–ด๋‚˜๋Š” ์ฝ”๋“œ ๋‹จ์œ„๋ฅผ ์ถ”์ ํ•  ์ˆ˜ ์žˆ๋‹ค. ํฌ๋กฌ์—์„œ ๋””๋ฒ„๊น…ํ•˜๊ธฐ chrome ํ™”๋ฉด์—์„œ f12 ๋ฅผ ๋ˆ„๋ฅด๋ฉด ๊ฐœ๋ฐœ์ž ํˆด์ด ๋‚˜์˜จ๋‹ค. ๊ทธ ๊ณณ์—์„œ Sources(์†Œ์Šค) ํƒญ์„ ๋ˆ„๋ฅด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค. Sourceํƒญ ๋งจ ์™ผ์ชฝ ๋ถ€๋ถ„์˜ ํŒŒ์ผ๋“ค์€ ํ˜„์žฌ ์ฝํžˆ๊ณ  ์žˆ๋Š” ๋ชจ๋“  ํŒŒ์ผ -(๋งˆ์šฐ์Šค ์˜ค๋ฒ„ํ•˜๋ฉด ํ˜„์žฌ ์—ด๋ฆฐ ํŒŒ์ผ์˜ ๊ฒฝ์šฐ ํ‘œ์‹œ๊ฐ€ ๋˜์–ด ์•Œ๊ธฐ ์‰ฝ๋‹ค.) ๊ฐ€์šด๋ฐ ๋ถ€๋ถ„์€ ์†Œ์Šค์ฝ”๋“œ์ด๋‹ค. ๋งจ ์˜ค๋ฅธ์ชฝ ๋ถ€๋ถ„์€ ๋””๋ฒ„๊น… ์ œ์–ด ๊ธฐ๋Šฅ๋“ค์ด๋‹ค. ๋””๋ฒ„๊น… ํ•œ๋‹จ๊ณ„์”ฉ ๋Œ๋ฆฌ๋Š” ๋‹จ์ถ•ํ‚ค : F10 (window) ๋””๋ฒ„๊น… ์ข…๋ฃŒ ๋‹จ์ถ•ํ‚ค : F8 (window) ๋””๋ฒ„๊น… ์ œ์–ด ๊ธฐ๋Šฅ์„ ์‚ดํŽด๋ณด์ž ์ค‘๋‹จ..
์ •๊ทœ์‹ - Oracle, JAVA
ยท
TIL
๋Œ€๋ถ€๋ถ„ ์–ธ์–ด์˜ ์ •๊ทœ์‹ ๋ฌธ๋ฒ•์€ ๋น„์Šทํ•˜๋‹ค. ์˜ค๋ผํด ์˜ค๋ผํด SQL์—์„œ๋Š” ์ •๊ทœ์‹์„ ์‚ฌ์šฉํ•  ๋•Œ REGEXP ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ •๊ทœ์‹ ํ•จ์ˆ˜ 1) REGEXP_LIKE : LIKE ๊ฒ€์ƒ‰ ๊ฐ™์ด ์ •๊ทœ์‹ ์ผ์น˜ ์ˆ˜ํ–‰, boolean์„ ๋ฐ˜ํ™˜. REGEXP_LIKE ( ๊ฒ€์ƒ‰๋  ๋ฌธ์ž์—ด, ์ •๊ทœ์‹ ํŒจํ„ด [, ๋งค์นญ ๋งค๊ฐœ๋ณ€์ˆ˜] ) ๋”๋ณด๊ธฐ - ๋งค์นญ ๋งค๊ฐœ๋ณ€์ˆ˜ i : ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ X c : ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„ (๊ธฐ๋ณธ๊ฐ’) n : ๋งˆ์นจํ‘œ ๋ฌธ์ž๊ฐ€ ์ƒˆ ๋ผ์ธ๊ณผ ์ผ์น˜ํ•˜๋„๋ก ํ•จ m : ์†Œ์Šค ๋ฌธ์ž์—ด์„ ์•ต์ปค ๋ฌธ์ž(^,$) ๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋Š” ์—ฌ๋Ÿฌ์ค„๋กœ ์ฒ˜๋ฆฌ x : ๊ณต๋ฐฑ ๋ฌธ์ž ๋ฌด์‹œ 2) REGEXP_SUBSTR : ์ง€์ •๋œ ์ •๊ทœ์‹ ํŒจํ„ด๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฌธ์ž์—ด ๋ฐ˜ํ™˜ REGEXP_SUBSTR( ๋Œ€์ƒ ๋ฌธ์ž์—ด, ์ •๊ทœ์‹ ํŒจํ„ด [, ์‹œ์ž‘์œ„์น˜ [,์ผ์น˜ํšŸ์ˆ˜ [, ๋งค์นญ ํŒŒ๋ผ๋ฏธํ„ฐ] ] ] ) ..
์ •๊ทœ์‹
ยท
TIL
์ •๊ทœ์‹์ด๋ž€? (Regular expressions, Regex, Regexp) : ๋ฌธ์ž ํŒจํ„ด์„ ํ‘œํ˜„ํ•˜๋Š” ๊ณต์‹์œผ๋กœ, ์ผ์ข…์˜ ํ˜•์‹ ์–ธ์–ด. : ํŠน์ • ๊ทœ์น™์ด ์žˆ๋Š” ๋ฌธ์ž์—ด ์ง‘ํ•ฉ์„ ์ถ”์ถœํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ๋ฒ•. : ์ •๊ทœ์‹์€ JavaScript, Java, Oracle, Python, R, Perl, C, C# ๋“ฑ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฐ์ดํ„ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ( ํ•ธ๋“œํฐ ๋ฒˆํ˜ธ, ์ด๋ฉ”์ผ ํ˜•์‹, ์ฃผ์†Œ ํ˜•์‹, ์‹œ๊ฐ„๋ฌธ์ž์—ด ๋“ฑ) ์›น ์Šคํฌ๋ž˜ํ•‘ (ํŠน์ • ํŒจํ„ด์œผ๋กœ ์ •๋ณด๋ฅผ ์Šคํฌ๋žฉ) ๋ฌธ์ž์—ด ํŒŒ์‹ฑ(URL ์ฟผ๋ฆฌํŒŒ๋ผ๋ฏธํ„ฐ ํŒŒ์‹ฑ, ๊ด„ํ˜ธ ํŒŒ์‹ฑ ๋“ฑ) ๋ฐ ๋ฌธ์ž์—ด ๋Œ€์ฒด(๋Œ€์†Œ๋ฌธ์ž ๋ณ€๊ฒฝ ๋“ฑ) ๋ฌธ๋ฒ• ํ•˜์ด๋ผ์ดํŒ…, ํŒŒ์ผ๋ช… ๋ณ€๊ฒฝ, ํŒจํ‚ท ์Šค๋‹ˆํ•‘ ๋“ฑ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๋Š” ์—ฌ๋Ÿฌ ์‘์šฉ๋กœ์ง์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅ. 1. ๋ฉ”ํƒ€๋ฌธ์ž ๋ฉ”ํƒ€๋ฌธ์ž๋ž€ ๋ฌธ์ž๋ฅผ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•œ ๋ฌธ์ž...