โœ“ ๋‰ด์Šค๋ ˆํ„ฐ

๐Ÿ“ฐ "Notion์˜ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ๊ตฌ์ถ• ๋ฐ ํ™•์žฅ" ๅค– (2024/07/15)

๊ตฌ๋…์ž ๋‹˜์ด ์ž ๋“  ์‚ฌ์ด์— ์žˆ์—ˆ๋˜ ํ•ซ ํ•œ ์ด์Šˆ๋“ค์„ ๋ชจ์•„๋ณด์•˜๋Š”๋ฐ์š”. ์–ด๋–ค ์ผ๋“ค์ด ์žˆ์—ˆ๋Š”์ง€ ๋ณด๊ธฐ ์ข‹๊ฒŒ ์ •๋ฆฌํ•ด์„œ ๊ณต์œ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

2024.07.15 | ์กฐํšŒ 220 |
0
|

Hello.Stranger

"ํ•˜๋ฃจ๋ฅผ 13์‹œ๊ฐ„ ์•ž์„œ ์‹œ์ž‘ํ•˜์„ธ์š”:" ํ•ด์™ธ IT ํŠธ๋ Œ๋“œ๋ฅผ ๊ฐ€์žฅ ๋จผ์ € ๋งŒ๋‚  ์ˆ˜ ์žˆ๊ฒŒ '์•„์นจ 7์‹œ'๋งˆ๋‹ค ๋‰ด์Šค๋ ˆํ„ฐ๋ฅผ ๋ณด๋‚ด๋“œ๋ ค์š”.๐Ÿ›ธ

2024/07/15 ์›”์š”์ผ


๋ฐ˜๊ฐ€์›Œ์š”. ๊ตฌ๋…์ž ๋‹˜!๐Ÿซก

๊ตฌ๋…์ž ๋‹˜์ด ์ž ๋“  ์‚ฌ์ด์— ์žˆ์—ˆ๋˜ ํ•ซ ํ•œ ์ด์Šˆ๋“ค์„ ๋ชจ์•„๋ณด์•˜๋Š”๋ฐ์š”. ์–ด๋–ค ์ผ๋“ค์ด ์žˆ์—ˆ๋Š”์ง€ ๋ณด๊ธฐ ์ข‹๊ฒŒ ์ •๋ฆฌํ•ด์„œ ๊ณต์œ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.


 

๐Ÿ“ฐ IT๋‰ด์Šค ๋ชจ์•„๋ณด๊ธฐ (๊ตญ๋‚ด)


AI ์—ญ๋Ÿ‰ ํ‰๊ฐ€ ์‹œํ—˜ 'AICE', ๋Œ€ํ•™๊ฐ€์—์„œ ์ธ๊ธฐ

AI ํ™œ์šฉ ์—ญ๋Ÿ‰์„ ํ‰๊ฐ€ํ•˜๋Š” 'AICE' ์‹œํ—˜์ด ๊ตญ๋‚ด ๋Œ€ํ•™๊ฐ€์—์„œ ์ธ๊ธฐ๋ฅผ ์–ป๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์•ˆ๋™๋Œ€๋ฅผ ์‹œ์ž‘์œผ๋กœ ์—ฐ์„ธ๋Œ€, ์ธ์ฒœ๋Œ€, ๊ณ„๋ช…๋Œ€ ๋“ฑ ๋‹ค์ˆ˜์˜ ๋Œ€ํ•™์—์„œ AICE๋ฅผ ๋„์ž…ํ•˜์—ฌ ํ•™์ƒ๋“ค์˜ AI ์—ญ๋Ÿ‰ ๊ฐ•ํ™”์™€ ์ทจ์—… ๊ฒฝ์Ÿ๋ ฅ ํ–ฅ์ƒ์„ ๋„๋ชจํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ์•ˆ๋™๋Œ€๋Š” ์ง€์—ญ ์‚ฐ์—…๊ณผ AI ๊ธฐ์ˆ  ์—ฐ๊ณ„๋ฅผ ๋ชฉํ‘œ๋กœ, AICE ๊ต์œก์„ ํ†ตํ•ด ๋†์‚ฐ์—…, ๋ฐ”์ด์˜คยท๋ฐฑ์‹ , ๋ฌธํ™”ยท๊ด€๊ด‘ ์‚ฐ์—… ๋ถ„์•ผ์˜ AI ์ธ์žฌ ์–‘์„ฑ์— ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ„ํ˜ธํ•™, ๊ฑด์ถ•ํ•™ ๋“ฑ ๋‹ค์–‘ํ•œ ์ „๊ณต ํ•™์ƒ๋“ค์ด AICE ๊ต์œก์„ ํ†ตํ•ด ๋”ฅ๋Ÿฌ๋‹ ์—ฐ๊ตฌ, ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋“ฑ AI ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•œ ํ•™๋ฌธ ํƒ๊ตฌ์™€ ์ทจ์—… ์ค€๋น„์— ์ ๊ทน์ ์œผ๋กœ ํ™œ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ด๋Š” ํ•™์ƒ๋“ค์˜ ํ•™๋ฌธ์  ์„ฑ์žฅ๊ณผ ๋ฏธ๋ž˜ ๊ฒฝ์Ÿ๋ ฅ ๊ฐ•ํ™”์— ๊ธฐ์—ฌํ•  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

 

์•Œ๋ฆฌ๋ฐ”๋ฐ”, ์‰ฌ์ธ ๊ณต์„ธ์— ๋งž์„œ๋Š” ํ•œ๊ตญ ์œ ํ†ต์˜ ๋ฏธ๋ž˜

๋ณธ ๊ธฐ์‚ฌ๋Š” ์ค‘๊ตญ ์•Œ๋ฆฌ๋ฐ”๋ฐ”, ์‰ฌ์ธ ๋“ฑ์˜ ๊ณต์„ธ๊ฐ€ ํ•œ๊ตญ ์œ ํ†ต ์‹œ์žฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ๊ณผ ์ด์— ๋Œ€ํ•œ ๋Œ€์‘ ๋ฐฉ์•ˆ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. 1990๋…„๋Œ€ ๊นŒ๋ฅดํ‘ธ, ์›”๋งˆํŠธ ์ง„์ถœ ์‚ฌ๋ก€๋ฅผ ์–ธ๊ธ‰ํ•˜๋ฉฐ ํ•œ๊ตญ ์œ ํ†ต ์‹œ์žฅ์˜ ์ž ์žฌ๋ ฅ๊ณผ ๊ฒฝ์Ÿ๋ ฅ์„ ๊ฐ•์กฐํ•˜๋ฉฐ, ํ˜„์žฌ ์ƒํ™ฉ์— ๋งž๋Š” ์ƒˆ๋กœ์šด ์ „๋žต์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € ์‹œ๋Œ€์— ๋’ค๋–จ์–ด์ง„ ๊ทœ์ œ, ํŠนํžˆ ์œ ํ†ต์‚ฐ์—…๋ฐœ์ „๋ฒ•์˜ ๊ฐœ์ •์„ ํ†ตํ•ด ์œ ํ†ต ์‹œ์žฅ์˜ ์œ ์—ฐ์„ฑ์„ ํ™•๋ณดํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ฃผ์žฅํ•ฉ๋‹ˆ๋‹ค. 

 

์Šค๋งˆํŠธ ๊ธฐ์ˆ ๊ณผ ์นœํ™˜๊ฒฝ ์„ค๊ณ„๋กœ ๋ฌด์žฅํ•œ '๊ฐ•๋™ ํ—ค๋ฆฌํ‹ฐ์ง€ ์ž์ด'

GS๊ฑด์„ค์˜ '๊ฐ•๋™ ํ—ค๋ฆฌํ‹ฐ์ง€ ์ž์ด'๋Š” ์„œ์šธ ๊ฐ•๋™๊ตฌ ๊ธธ๋™์— ์œ„์น˜ํ•œ ์žฌ๊ฑด์ถ• ์•„ํŒŒํŠธ๋กœ, ๋›ฐ์–ด๋‚œ ์ฃผ๊ฑฐ ํ™˜๊ฒฝ, ํŽธ๋ฆฌํ•œ ๊ตํ†ต, ์šฐ์ˆ˜ํ•œ ๊ต์œก ํ™˜๊ฒฝ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ28ํšŒ ๋งค๊ฒฝ ์‚ด๊ธฐ์ข‹์€ ์•„ํŒŒํŠธ ์„ ๋ฐœ๋Œ€ํšŒ์—์„œ ๋Œ€์ƒ์„ ์ˆ˜์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ์Šค๋งˆํŠธํ™ˆ ์‹œ์Šคํ…œ, ์‹œ์Šคํด๋ผ์ธ ๊ณต๊ธฐ์ฒญ์ • ์‹œ์Šคํ…œ ๋“ฑ ์ฒจ๋‹จ ๊ธฐ์ˆ ์„ ๋„์ž…ํ•˜์—ฌ ์ž…์ฃผ๋ฏผ์—๊ฒŒ ํŽธ๋ฆฌํ•˜๊ณ  ์•ˆ์ „ํ•œ ์ฃผ๊ฑฐ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋ฉฐ, ์ž์ด์•ฑ ์†”๋ฃจ์…˜์„ ํ†ตํ•ด ์Šค๋งˆํŠธํฐ์œผ๋กœ ์ „๋“ฑ, ๋‚œ๋ฐฉ ๋“ฑ์„ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์–ด ํŽธ์˜์„ฑ์„ ๋”์šฑ ๋†’์˜€์Šต๋‹ˆ๋‹ค. 

 

AT&T, ๋˜ ํ•ดํ‚น ๋‹นํ–ˆ๋‹ค! 1์–ต900๋งŒ๋ช… ๊ณ ๊ฐ ๋ฐ์ดํ„ฐ ์œ ์ถœ

๋ฏธ๊ตญ์˜ ์ฃผ์š” ํ†ต์‹ ์—…์ฒด AT&T๊ฐ€ ๋˜ ๋‹ค์‹œ ๋Œ€๊ทœ๋ชจ ํ•ดํ‚น ๊ณต๊ฒฉ์„ ๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋Š” ๊ณ ๊ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์ด ํ•ด์ปค์˜ ๊ณต๊ฒฉ์„ ๋ฐ›์•„ 1์–ต900๋งŒ๋ช…์˜ ๊ณ ๊ฐ ํ†ต์‹  ๊ธฐ๋ก 6๊ฐœ์›” ์น˜๊ฐ€ ์œ ์ถœ๋˜์—ˆ๋‹ค๊ณ  ํ•ด์š”. ๋‹คํ–‰ํžˆ ํ†ตํ™” ๋‚ด์šฉ์ด๋‚˜ ์‹ ์ƒ ์ •๋ณด๋Š” ์œ ์ถœ๋˜์ง€ ์•Š์•˜์ง€๋งŒ, ์ด๋ฒˆ ์‚ฌ๊ฑด์€ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์˜ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์—ฌ์‹คํžˆ ๋“œ๋Ÿฌ๋ƒˆ์Šต๋‹ˆ๋‹ค. AT&T๋Š” FBI์™€ ํ˜‘๋ ฅํ•˜์—ฌ ์กฐ์‚ฌ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์šฉ์˜์ž๋ฅผ ์ตœ์†Œ 1๋ช… ์ฒดํฌํ–ˆ๋‹ค๊ณ  ๋ฐํ˜”์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์‚ฌ๊ฑด์€ ๊ธฐ์—…์˜ ๋ฐ์ดํ„ฐ ๋ณด์•ˆ์— ๋Œ€ํ•œ ์ค‘์š”์„ฑ์„ ๋‹ค์‹œ ํ•œ๋ฒˆ ๊ฐ•์กฐํ•˜๋ฉฐ, ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ์˜ ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ ๋ฐ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ ๊ฐ•ํ™” ํ•„์š”์„ฑ์„ ์‹œ์‚ฌํ•ด์š”.

 

๋ฆฌ๋”ฉ๋ฐฉ ์‚ฌ๊ธฐ์˜ ์ง„ํ™”: ์•”์‹œ์žฅ ๊ฑฐ๋ž˜๋˜๋Š” ํ”ผํ•ด์ž ์ •๋ณด์™€ ์ƒˆ๋กœ์šด ์Šค์บ  ์ „๋žต

๋ณธ ๊ธฐ์‚ฌ๋Š” ๋ฆฌ๋”ฉ๋ฐฉ ์‚ฌ๊ธฐ์˜ ์‹ฌ๊ฐ์„ฑ์„ ๋‹ค๋ฃจ๋ฉฐ, ์•”์‹œ์žฅ์—์„œ ๊ฑฐ๋ž˜๋˜๋Š” ํ”ผํ•ด์ž ์ •๋ณด์™€ ์ƒˆ๋กœ์šด ์Šค์บ  ์ „๋žต์„ ์ƒ์„ธํžˆ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ๋”ฉ๋ฐฉ ์‚ฌ๊ธฐ๊พผ๋“ค์€ ํ”ผํ•ด์ž ์ •๋ณด๋ฅผ ์•”์‹œ์žฅ์—์„œ ํŒ๋งคํ•˜์—ฌ ์ถ”๊ฐ€์ ์ธ ์‚ฌ๊ธฐ๋ฅผ ์ €์ง€๋ฅด๊ณ  ์žˆ์œผ๋ฉฐ, ์ด๋Ÿฌํ•œ ์ •๋ณด๋Š” ํฌ๋ฆฌ๋ด์…œ ์Šคํ„ฐํ•‘์„ ํ†ตํ•ด ๋‹ค์–‘ํ•œ SNS ๊ณ„์ • ํ•ดํ‚น์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ํŠนํžˆ, ํŽ˜์ด์Šค๋ถ, ์ธ์Šคํƒ€๊ทธ๋žจ ๋“ฑ์—์„œ ๋‚ฏ์„  ์‚ฌ๋žŒ์ด ์ ‘๊ทผํ•˜๋Š” ๊ฒฝ์šฐ ์ฃผ์˜๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์‚ฌ์„ค HTS๋ฅผ ์ด์šฉํ•œ ๊ฐ€์งœ ์ˆ˜์ต ์ฐฝ์ถœ, ๋ชธ์บ  ํ”ผ์‹ฑ์„ ํ†ตํ•œ ํ˜‘๋ฐ• ๋“ฑ ๋‹ค์–‘ํ•œ ์Šค์บ  ๊ธฐ๋ฒ•์ด ๋“ฑ์žฅํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ •๋ถ€๋Š” ํˆฌ์ž ๋ฆฌ๋”ฉ๋ฐฉ ์‚ฌ๊ธฐ ํ”ผํ•ด ์ฆ๊ฐ€์— ๋”ฐ๋ผ ํ•ฉ๋™ ์ˆ˜์‚ฌ๋ฅผ ํ™•๋Œ€ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.


 

๐Ÿ“ฐ IT๋‰ด์Šค ๋ชจ์•„๋ณด๊ธฐ (ํ•ด์™ธ)



 

๐Ÿง  Dev & Biz ์ธ์‚ฌ์ดํŠธ ํ›‘์–ด๋ณด๊ธฐ


Notion์˜ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ ๊ตฌ์ถ• ๋ฐ ํ™•์žฅ

Notion์€ 3๋…„ ๋งŒ์— ์‚ฌ์šฉ์ž์™€ ์ฝ˜ํ…์ธ  ์„ฑ์žฅ์œผ๋กœ ์ธํ•ด ๋ฐ์ดํ„ฐ๊ฐ€ 10๋ฐฐ ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธ‰๊ฒฉํ•œ ์„ฑ์žฅ์„ ๊ด€๋ฆฌํ•˜๊ณ  Notion AI ๊ธฐ๋Šฅ๊ณผ ๊ฐ™์€ ์ค‘์š”ํ•œ ์ œํ’ˆ ๋ฐ ๋ถ„์„์  ํ™œ์šฉ ์‚ฌ๋ก€์— ๋Œ€ํ•œ ๋ฐ์ดํ„ฐ ์ˆ˜์š”๋ฅผ ์ถฉ์กฑํ•˜๊ธฐ ์œ„ํ•ด Notion์€ ๋ฐ์ดํ„ฐ ๋ ˆ์ดํฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ํ™•์žฅํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. Notion์€ ๋ชจ๋“  ์ฝ˜ํ…์ธ ๋ฅผ '๋ธ”๋ก'์œผ๋กœ ํ‘œํ˜„ํ•˜๋Š” Postgres ๊ธฐ๋ฐ˜์˜ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ์ผ๊ด€๋œ ๊ตฌ์กฐ, ์Šคํ‚ค๋งˆ ๋ฐ ๊ด€๋ จ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ Postgres ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋˜๋ฉฐ, ์ด๋Š” ์ˆ˜๋ฐฑ ํ…Œ๋ผ๋ฐ”์ดํŠธ ๊ทœ๋ชจ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. 

 

Kubernetes Pod Startup ์ตœ์ ํ™”

Checkly๋Š” ECS ๊ธฐ๋ฐ˜ ๋Œ€๊ทœ๋ชจ ์„œ๋น„์Šค์—์„œ Kubernetes ๊ธฐ๋ฐ˜์˜ Ephemeral Pod๋กœ ์ „ํ™˜ํ•˜์—ฌ ์ปดํ“จํŒ… ๋น„์šฉ ์ ˆ๊ฐ์„ ๋ชฉํ‘œ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค. Pod Startup ์‹œ๊ฐ„์„ ์ตœ์ ํ™”ํ•˜๊ธฐ ์œ„ํ•ด Grafana ์ฟผ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ CPU ์‹œ๊ฐ„ ์†Œ๋ชจ ์›์ธ์„ ์ •ํ™•ํžˆ ๋ถ„์„ํ–ˆ์œผ๋ฉฐ, 'require'๋ฅผ ํ™œ์šฉํ•œ ๋…ํŠนํ•œ ๋ฐฉ์‹๊ณผ ์ž ์žฌ์  ๋ฐ˜ํŒจํ„ด์œผ๋กœ ์—ฌ๊ฒจ์งˆ ์ˆ˜ ์žˆ๋Š” ์ฝ”๋”ฉ ๋ฐฉ์‹์„ ์ ์šฉํ•˜์—ฌ 300ms์˜ Startup ์‹œ๊ฐ„ ๋‹จ์ถ•์„ ๋‹ฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ตœ์ ํ™”๋Š” ์ „์ฒด ์ปดํ“จํŒ… ๋น„์šฉ ์ ˆ๊ฐ๊ณผ ๋” ๋‚˜์•„๊ฐ€ ์ฒดํฌ ์‹คํ–‰ ํšจ์œจ์„ฑ ์ฆ๋Œ€์— ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค. Checkly์˜ ๊ฒฝํ—˜์€ Kubernetes ํ™˜๊ฒฝ์—์„œ Pod Startup ์‹œ๊ฐ„ ์ตœ์ ํ™”์— ๋Œ€ํ•œ ์‹ค์งˆ์ ์ธ ์ง€์นจ์„ ์ œ๊ณตํ•˜๋ฉฐ, ๊ฐœ๋ฐœ์ž๋“ค์€ ์ด๋ฅผ ํ†ตํ•ด ๋”์šฑ ํšจ์œจ์ ์ธ ์‹œ์Šคํ…œ ๊ตฌ์ถ•์„ ์œ„ํ•œ ์ „๋žต์„ ์ˆ˜๋ฆฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋น…ํ…Œํฌ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํšจ๊ณผ์ ์ธ ์—…๋ฌด ๊ณ„ํš ์ „๋žต

๋ณธ ๊ธ€์€ ๋น…ํ…Œํฌ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ํšจ๊ณผ์ ์ธ ์—…๋ฌด ๊ณ„ํš ์ „๋žต์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์ €์ž๋Š” ์ธํ„ด์‹ญ ๊ฒฝํ—˜๊ณผ ์‹ค์ œ ์—…๋ฌด ๊ฒฝํ—˜์˜ ์ฐจ์ด๋ฅผ ํ†ตํ•ด ์–ป์€ ๊ตํ›ˆ์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ณ„ํš ์ˆ˜๋ฆฝ์˜ ์ค‘์š”์„ฑ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ์ฒด์ ์œผ๋กœ, ์Šคํ”„๋ฆฐํŠธ ๋ชฉํ‘œ๋ฅผ ๋ช…ํ™•ํžˆ ์„ค์ •ํ•˜๊ณ , ์ผ์ผ ๋กœ๊ทธ ๊ธฐ๋ก, ๋ฌธ์„œ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ, ํ•™์Šต ์ž๋ฃŒ ์ €์žฅ์†Œ, ์ง„ํ–‰ ์ƒํ™ฉ ๋ฌธ์„œ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ „๋žต์€ ๊ฐœ๋ฐœ์ž๋“ค์ด ์žฅ๊ธฐ์ ์ธ ๋ชฉํ‘œ ๋‹ฌ์„ฑ์„ ์œ„ํ•œ ์ฒด๊ณ„์ ์ธ ๊ณ„ํš ์ˆ˜๋ฆฝ ๋ฐ ๊ด€๋ฆฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜์—ฌ, ํšจ์œจ์„ฑ์„ ๋†’์ด๊ณ  ์—…๋ฌด ์„ฑ๊ณผ๋ฅผ ๊ทน๋Œ€ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ปดํ“จํ„ฐ ์†๋„ ์ถ”์ธก ํ€ด์ฆˆ

๋ณธ ํ€ด์ฆˆ๋Š” ๋‹ค์–‘ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•œ ์‹คํ–‰ ์‹œ๊ฐ„์„ ์ถ”์ธกํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ, ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์— ๋Œ€ํ•œ ์ง๊ด€๋ ฅ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. N์˜ ํฌ๊ธฐ๊ฐ€ ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ์ฝ”๋“œ ์‹คํ–‰ ์‹œ๊ฐ„์ด ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ๋ณ€ํ•˜๋Š” ๊ฒƒ์„ ๊ฒฝํ—˜ํ•˜๋ฉฐ, ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๊นŠ์ด ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Rust์™€ Python ์ฝ”๋“œ๋ฅผ ๋น„๊ตํ•˜์—ฌ ์–ธ์–ด๋ณ„ ์„ฑ๋Šฅ ์ฐจ์ด๋ฅผ ํ™•์ธํ•˜๊ณ , ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ ์ตœ์ ํ™” ์ „๋žต์„ ์ˆ˜๋ฆฝํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ํ†ต์ฐฐ๋ ฅ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ์ฝ”๋“œ์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ์‹ค์งˆ์ ์œผ๋กœ ๊ฒฝํ—˜ํ•˜๋ฉฐ, ํšจ์œจ์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์„ค๊ณ„์˜ ์ค‘์š”์„ฑ์„ ๊นจ๋‹ฌ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

GraphQL Introspection: ๊ฐœ๋ฐœ์ž์˜ ํŽธ๋ฆฌํ•จ vs. ํ•ด์ปค์˜ ๋ฌด๊ธฐ

GraphQL Introspection์€ ๊ฐœ๋ฐœ์ž๊ฐ€ API ๊ตฌ์กฐ๋ฅผ ์‰ฝ๊ฒŒ ์ดํ•ดํ•˜๊ณ  ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋™์‹œ์— ํ•ด์ปค์—๊ฒŒ API ๊ตฌ์กฐ์™€ ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ๋…ธ์ถœ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋Š” ์œ„ํ—˜์„ฑ๋„ ๋‚ดํฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด์ปค๋Š” Introspection์„ ํ†ตํ•ด API ์Šคํ‚ค๋งˆ๋ฅผ ํŒŒ์•…ํ•˜๊ณ , ๋ฏผ๊ฐํ•œ ์ •๋ณด๋ฅผ ํƒ์ƒ‰ํ•˜๊ฑฐ๋‚˜, ์ทจ์•ฝ์ ์„ ์ฐพ์•„ ๊ณต๊ฒฉ ๋ฒกํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, Schema Reconnaissance๋ฅผ ํ†ตํ•ด API ๊ตฌ์กฐ๋ฅผ ์ƒ์„ธํžˆ ๋ถ„์„ํ•˜๊ณ , ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋‚˜ ๊ณต๊ฒฉ ๊ฐ€๋Šฅํ•œ ์ง€์ ์„ ํŒŒ์•…ํ•˜์—ฌ ๊ณต๊ฒฉ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ GraphQL Introspection ์‚ฌ์šฉ ์‹œ์—๋Š” ๋ณด์•ˆ์— ๋Œ€ํ•œ ์ฒ ์ €ํ•œ ๊ณ ๋ ค๊ฐ€ ํ•„์ˆ˜์ ์ด๋ฉฐ, Introspection ๊ธฐ๋Šฅ์„ ์ œํ•œํ•˜๊ณ , API ์ธ์ฆ ๋ฐ ๊ถŒํ•œ ๊ด€๋ฆฌ๋ฅผ ๊ฐ•ํ™”ํ•˜๋Š” ๋“ฑ ๋ณด์•ˆ ์กฐ์น˜๋ฅผ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.


 

๐Ÿ‘จ๐Ÿปโ€๐Ÿ’ป ์˜คํ”ˆ์†Œ์Šค ์†Œ์‹์ง€


C ์–ธ์–ด๋ฅผ ์œ„ํ•œ DEFER ๋งคํฌ๋กœ: ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ ํ–ฅ์ƒ

DEFER.h๋Š” C ์–ธ์–ด์—์„œ 'defer' ๊ฐœ๋…์„ ๊ตฌํ˜„ํ•˜๋Š” ๋งคํฌ๋กœ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค. DEFER_START, DEFER_END, DEFER ๋งคํฌ๋กœ๋ฅผ ํ†ตํ•ด ํŠน์ • ์ฝ”๋“œ ๋ธ”๋ก์˜ ๋์—์„œ ์‹คํ–‰๋  ์ฝ”๋“œ๋ฅผ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ž์› ํ•ด์ œ, ๋‹ซ๊ธฐ ์ž‘์—…, ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋“ฑ๊ณผ ๊ฐ™์€ ์ž‘์—…์„ ์ฝ”๋“œ ๋ธ”๋ก์˜ ์‹œ์ž‘ ๋ถ€๋ถ„์— ํฉ์–ด์ ธ ์žˆ๋Š” ๋Œ€์‹  ์ฝ”๋“œ ๋ธ”๋ก์˜ ๋์—์„œ ์ผ๊ด„์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. DEFER.h๋Š” jmp_buf ๋˜๋Š” ๋ ˆ์ด๋ธ” ์ฃผ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋“œ ํ๋ฆ„ ์ œ์–ด๋ฅผ ์œ ์—ฐํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋ฉฐ, ์Šคํƒ ๊ธฐ๋ฐ˜ ๋ฐฉ์‹์œผ๋กœ defer ์ž‘์—…์„ ๊ด€๋ฆฌํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋‚˜ ์˜ค๋ฅ˜๋ฅผ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.

 

TextMagic: ์ฐจ์„ธ๋Œ€ ํ…์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ

TextMagic์€ ๊ธฐ์กด์˜ ์ž…๋ ฅ ๋ฐ ํ…์ŠคํŠธ ์˜์—ญ ์ปดํฌ๋„ŒํŠธ์˜ ํ•œ๊ณ„๋ฅผ ๋›ฐ์–ด๋„˜์–ด ํ’๋ถ€ํ•œ ํ…์ŠคํŠธ ํšจ๊ณผ์™€ ์กฐํŒ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์ฐจ์„ธ๋Œ€ ํ…์ŠคํŠธ ์ปดํฌ๋„ŒํŠธ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“ˆํ™”๋œ ๋””์ž์ธ์„ ํ†ตํ•ด ํ†ตํ•ฉ ์ปดํฌ๋„ŒํŠธ(@text-magic)์™€ ํ…์ŠคํŠธ ์ž…๋ ฅ(@text-magic/input), ํ…์ŠคํŠธ ์กฐํŒ ๋ฐ ๋ Œ๋”๋ง(@text-magic/renderer)์— ํŠนํ™”๋œ ๋…๋ฆฝ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•„์š”์— ๋”ฐ๋ผ ์„ ํƒ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

Crawlee: ์›น ์Šคํฌ๋ž˜ํ•‘๊ณผ ๋ธŒ๋ผ์šฐ์ € ์ž๋™ํ™”๋ฅผ ์œ„ํ•œ Python ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

Crawlee๋Š” Python ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ ์›น ์Šคํฌ๋ž˜ํ•‘ ๋ฐ ๋ธŒ๋ผ์šฐ์ € ์ž๋™ํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ, HTTP ๊ธฐ๋ฐ˜ ํฌ๋กค๋ง๊ณผ ํ—ค๋“œ๋ฆฌ์Šค ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ฐ˜ ํฌ๋กค๋ง์„ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ž๋™ ๋ณ‘๋ ฌ ํฌ๋กค๋ง, ํƒ€์ž… ํžŒํŠธ, ์žฌ์‹œ๋„ ๋ฉ”์ปค๋‹ˆ์ฆ˜, ํ”„๋ก์‹œ ๋กœํ…Œ์ด์…˜, ์š”์ฒญ ๋ผ์šฐํŒ…, ์ง€์†์ ์ธ URL ํ, ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์ €์žฅ์†Œ, ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๋“ฑ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ Playwright๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์–ด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ๋ Œ๋”๋ง๋˜๋Š” ์›น ํŽ˜์ด์ง€๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์Šคํฌ๋ž˜ํ•‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, Scrapy๋ณด๋‹ค ๋” ๊ฐ„๊ฒฐํ•˜๊ณ  ์ง๊ด€์ ์ธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, Apify ํ”Œ๋žซํผ๊ณผ ํ†ตํ•ฉ๋˜์–ด ํด๋ผ์šฐ๋“œ์—์„œ ์Šคํฌ๋ž˜ํ•‘ ์ž‘์—…์„ ์‹คํ–‰ํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


 

๐Ÿ”— ๋ชป ๋‹คํ•œ ์ด์•ผ๊ธฐ๋“ค


์ด ์™ธ์—๋„ ๋‹ค์–‘ํ•œ ํ•ด์™ธ ์•„ํ‹ฐํด์„ ๋ณด๊ณ  ์‹ถ๋‹ค๋ฉด ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”!


 

๐Ÿ“ฃ ์ƒ์‹œ ๊ณต์ง€


'์œ ๋ฃŒ ๋ฉค๋ฒ„์‹ญ' ๊ถŒํ•œ์ด ์žˆ์œผ๋ฉด 1์ฃผ์ผ์— 1ํšŒ์”ฉ ๋ฐœํ–‰๋˜๋Š” ๊ธฐ์ˆ  ์•„ํ‹ฐํด์„ ์—ด๋žŒํ•  ์ˆ˜ ์žˆ์–ด์š”. ๋ฌผ๋ก , ๋ชจ๋“  ๊ตฌ๋…์ž๋ถ„๋“ค์—๊ฒŒ ๋‰ด์Šค๋ ˆํ„ฐ๋Š” ๋งค์ผ ๋ฐœ์†ก์ด ๋œ๋‹ต๋‹ˆ๋‹ค. :)

๋ฉค๋ฒ„์‹ญ ๋ณ€๊ฒฝํ•˜๊ธฐ


Social

 Threads | Instagram | X(Twitter) | Linkedin

 

 

๋‹ค๊ฐ€์˜ฌ ๋‰ด์Šค๋ ˆํ„ฐ๊ฐ€ ๊ถ๊ธˆํ•˜์‹ ๊ฐ€์š”?

์ง€๊ธˆ ๊ตฌ๋…ํ•ด์„œ ์ƒˆ๋กœ์šด ๋ ˆํ„ฐ๋ฅผ ๋ฐ›์•„๋ณด์„ธ์š”

์ด๋ฒˆ ๋‰ด์Šค๋ ˆํ„ฐ ์–ด๋– ์…จ๋‚˜์š”?

Hello.Stranger ๋‹˜์—๊ฒŒ โ˜•๏ธ ์ปคํ”ผ์™€ โœ‰๏ธ ์ชฝ์ง€๋ฅผ ๋ณด๋‚ด๋ณด์„ธ์š”!

๋Œ“๊ธ€

์˜๊ฒฌ์„ ๋‚จ๊ฒจ์ฃผ์„ธ์š”

ํ™•์ธ
์˜๊ฒฌ์ด ์žˆ์œผ์‹ ๊ฐ€์š”? ์ œ์ผ ๋จผ์ € ๋Œ“๊ธ€์„ ๋‹ฌ์•„๋ณด์„ธ์š” !

ยฉ 2024 Hello.Stranger

"ํ•˜๋ฃจ๋ฅผ 13์‹œ๊ฐ„ ์•ž์„œ ์‹œ์ž‘ํ•˜์„ธ์š”:" ํ•ด์™ธ IT ํŠธ๋ Œ๋“œ๋ฅผ ๊ฐ€์žฅ ๋จผ์ € ๋งŒ๋‚  ์ˆ˜ ์žˆ๊ฒŒ '์•„์นจ 7์‹œ'๋งˆ๋‹ค ๋‰ด์Šค๋ ˆํ„ฐ๋ฅผ ๋ณด๋‚ด๋“œ๋ ค์š”.๐Ÿ›ธ

๋‰ด์Šค๋ ˆํ„ฐ ๋ฌธ์˜ : hello.stranger1337@gmail.com

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ ์˜ค๋ฅ˜ ๋ฐ ๊ธฐ๋Šฅ ๊ด€๋ จ ์ œ๋ณด

์„œ๋น„์Šค ์ด์šฉ ๋ฌธ์˜admin@team.maily.so

๋ฉ”์ผ๋ฆฌ (๋Œ€ํ‘œ์ž: ์ดํ•œ๊ฒฐ) | ์‚ฌ์—…์ž๋ฒˆํ˜ธ: 717-47-00705 | ์„œ์šธ ์„œ์ดˆ๊ตฌ ๊ฐ•๋‚จ๋Œ€๋กœ53๊ธธ 8, 8์ธต 11-7ํ˜ธ

์ด์šฉ์•ฝ๊ด€ | ๊ฐœ์ธ์ •๋ณด์ฒ˜๋ฆฌ๋ฐฉ์นจ | ์ •๊ธฐ๊ฒฐ์ œ ์ด์šฉ์•ฝ๊ด€