AWS Step Function
AWS ํด๋ผ์šฐ๋“œ
AWS Step Functions ์‹œ์ž‘ํ•˜๊ธฐ

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

AWS Step Functions๋Š” AWS ์„œ๋ฒ„๋ฆฌ์Šค ํ”Œ๋žซํผ์˜ ์ผ๋ถ€๋กœ, ์„œ๋ฒ„๋ฆฌ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•ด AWS Lambda ํ•จ์ˆ˜๋ฅผ ๊ฐ„ํŽธํ•˜๊ฒŒ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Amazon EC2 ๋ฐ Amazon ECS์™€ ๊ฐ™์€ ์ปดํ“จํŒ… ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์—๋„ Step Functions๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์–ด๋–ค ๊ทœ๋ชจ๋กœ๋„ ์šด์˜ํ•  ์ˆ˜ ์žˆ๋„๋ก AWS Step Functions๊ฐ€ ์ž‘์—… ๋ฐ ๊ธฐ๋ณธ ์ธํ”„๋ผ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

IntroducingStepFunctions

AWS Step Functions๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์–ด๋–ค ๊ทœ๋ชจ์—์„œ๋„ ์•ˆ์ •์ ์ด๋ฉฐ ๊ฐ„ํŽธํ•˜๊ฒŒ ๊ฐœ๋Ÿ‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ„์‚ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์†์‰ฝ๊ฒŒ ๊ตฌ์ถ• ๋ฐ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ƒ์‚ฐ์„ฑ

AWS Step Functions๋Š” ์‹œ๊ฐ์  ์ฝ˜์†”๊ณผ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์›Œํฌํ”Œ๋กœ์— ๋Œ€ํ•œ ์ฒญ์‚ฌ์ง„์„ ์ œ๊ณตํ•˜๋ฏ€๋กœ, ์†์‰ฝ๊ฒŒ ๋ถ„์‚ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ณ‘๋ ฌ ๋ฐ/๋˜๋Š” ์ˆœ์ฐจ ๋‹จ๊ณ„๋กœ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ช‡ ๋ถ„์ด๋ฉด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•œ ๋‹ค์Œ ๊ฐ ๋‹จ๊ณ„์˜ ์‹คํ–‰์„ ์‹œ๊ฐํ™”ํ•˜๊ณ  ์ถ”์ ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์˜๋„๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณต์›์„ฑ

AWS Step Functions๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์˜๋„๋Œ€๋กœ ์ •์ƒ ์ž‘๋™ํ•˜๋„๋ก ์ž๋™์œผ๋กœ ๊ฐ ๋‹จ๊ณ„๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•ฉ๋‹ˆ๋‹ค. ์ด ์„œ๋น„์Šค๋Š” ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ๋‹จ๊ณ„๋ฅผ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด ์ˆ˜์š”๊ฐ€ ์ฆ๊ฐ€ํ•˜๋”๋ผ๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๊ฐ€์šฉํ•œ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Step Functions๋Š” ๋‹จ๊ณ„๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ๋ช‡ ์ดˆ ๋˜๋Š” ๋ช‡ ๋‹ฌ์ด ๊ฑธ๋ฆฌ๋“  ๊ฐ ๋‹จ๊ณ„์˜ ์ƒํƒœ๋ฅผ ์ถ”์ ํ•˜๊ณ  ๋‚ด์žฅ ์žฌ์‹œ๋„ ๋ฐ ๋Œ€์ฒด ๊ธฐ๋Šฅ์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋ฏผ์ฒฉ์„ฑ

AWS Step Functions๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ˆ˜์ •ํ•˜์ง€ ์•Š์•„๋„ ์†์‰ฝ๊ฒŒ ์›Œํฌํ”Œ๋กœ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ  ๋‹จ๊ณ„ ์ˆœ์„œ๋ฅผ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ฌ์ง€์–ด ํ•ด๋‹น ์ฝ”๋“œ๋„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ๊ตฌ์„ฑ ์š”์†Œ ๋ฐ ๋‹จ๊ณ„๋ฅผ ์žฌ์‚ฌ์šฉํ•˜์—ฌ ๋”์šฑ ๋น ๋ฅด๊ฒŒ ์‹คํ—˜ํ•˜๊ณ  ํ˜์‹ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›Œํฌํ”Œ๋กœ๋Š” ์ˆ˜์ฒœ ๊ฐœ์˜ ๊ฐœ๋ณ„ ๊ตฌ์„ฑ ์š”์†Œ ๋ฐ ๋‹จ๊ณ„๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์ ์  ๋ณต์žก๋„๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž์œ ๋กญ๊ฒŒ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Outsystems

"ํด๋ผ์šฐ๋“œ์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”Œ๋žซํผ์„ ์šด์˜ํ•˜๋ ค๋ฉด ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ํ”„๋ŸฐํŠธ ์—”๋“œ์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ™์€ ๋งค์šฐ ๋‹ค์–‘ํ•œ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์ •๋ณด๋ฅผ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๊ฒŒ ์กฐ์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. AWS Step Functions๋Š” ์ด ๊ณผ์ •์„ ๊ฐ„์†Œํ™”ํ•˜์—ฌ ์†์‰ฝ๊ฒŒ ๋‹ค๋‹จ๊ณ„ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๊ณ  ๋ณด๋‹ค ์ง€๋Šฅ์ ์ธ ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค."

Pedro Pimenta, R&D ๋‹ด๋‹น ๋ถ€์‚ฌ์žฅ, OutSystems

theTake

"๋‹น์‚ฌ๋Š” AWS Step Functions๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜๋™ ์ œํ’ˆ ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‚ด์žฅ ์žฌ์‹œ๋„ ์กฐ๊ฑด ๋ฐ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜๋Š” ์ผ๋ จ์˜ ์ž๋™ ๋‹จ๊ณ„๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ๋Š” ์ด ์„œ๋น„์Šค๋ฅผ ํ™œ์šฉํ•ด ์ค‘์š” ํ”„๋กœ๊ทธ๋žจ์„ ์ถœ์‹œํ•˜๊ธฐ ์ „์— ๋‹น์‚ฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์›น ์‚ฌ์ดํŠธ์— ์ตœ์‹  ๊ฐ€๊ฒฉ ๋ฐ ๊ฐ€์šฉ์„ฑ ์ •๋ณด๋ฅผ ๋ฐ˜์˜ํ•˜๊ณ  ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•˜๋Š” ์œ ํ–‰์— ๋Œ€์‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.โ€

Jared Browarnik, CTO, TheTake

foodpanda

โ€œAWS Step Functions๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ๋‹น์‚ฌ๋Š” ์šด์˜์„ ์ตœ์ ํ™”ํ•˜๊ณ  ์ง€์†์ ์œผ๋กœ ๊ณต๊ธ‰ ์‹œ๊ฐ„์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์‹ํ’ˆ ๊ณต๊ธ‰ ์„œ๋น„์Šค์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์›Œํฌํ”Œ๋กœ๋ฅผ ์†์‰ฝ๊ฒŒ ๋ณ€๊ฒฝํ•˜๊ณ  ๋ฐ˜๋ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Step Functions ๋•๋ถ„์— ์‹ํ’ˆ ๊ณต๊ธ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋‹จ๊ณ„๋ฅผ ๋™์ ์œผ๋กœ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์–ด ๊ณ ๊ฐ ์ฃผ๋ฌธ ๊ธ‰์ฆ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์ˆ˜์š”๋ฅผ ์ถฉ์กฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค .โ€

Mathias Nitzsche, CTO, foodpanda

AWS Step Functions๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น ๋ฅด๊ฒŒ ๋‹ค๋‹จ๊ณ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ •์˜, ์šด์˜ ๋ฐ ํ™•์žฅํ•˜์‹ญ์‹œ์˜ค.

AWS Step Functions ์ฝ˜์†”, API, Fluent Java API ๋˜๋Š” AWS CloudFormation ํ…œํ”Œ๋ฆฟ์„ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์›Œํฌํ”Œ๋กœ๋ฅผ ์ผ๋ จ์˜ ๋‹จ๊ณ„๋กœ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค ์‹œ๊ฐ์  ์ฝ˜์†”์ด ์ž๋™์œผ๋กœ ๊ฐ ๋‹จ๊ณ„๋ฅผ ์‹คํ–‰ ์ˆœ์„œ์— ๋”ฐ๋ผ ๊ทธ๋ž˜ํ”„๋กœ ํ‘œ์‹œํ•˜์—ฌ ๋‹ค๋‹จ๊ณ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ณต์žกํ•œ ์›Œํฌํ”Œ๋กœ๋ฅผ ์†์‰ฝ๊ฒŒ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ๋‹ค์ด์–ด๊ทธ๋žจ์€ ์ˆœ์ฐจ, ๋ถ„๊ธฐ ๋ฐ ๋ณ‘๋ ฌ ๋‹จ๊ณ„ ๋“ฑ ์‚ฌ์ง„ ๊ณต์œ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋‹จ๊ณ„ ํ๋ฆ„์„ ์˜ˆ์‹œํ•ฉ๋‹ˆ๋‹ค.

์ˆœ์ฐจ ๋‹จ๊ณ„

์ˆœ์ฐจ ๋‹จ๊ณ„

๋ถ„๊ธฐ ๋‹จ๊ณ„(๊ฒฝ๋กœ ์„ ํƒ)

๋ถ„๊ธฐ ๋‹จ๊ณ„(๊ฒฝ๋กœ ์„ ํƒ)

๋ณ‘๋ ฌ ๋‹จ๊ณ„

๋ณ‘๋ ฌ ๋‹จ๊ณ„

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜์—ฌ ๊ฐ ๋‹จ๊ณ„๊ฐ€ ์˜๋„๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ์ฝ˜์†”์€ ๊ฐ ๋‹จ๊ณ„์˜ ์‹ค์‹œ๊ฐ„ ์ƒํƒœ๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ๋ชจ๋“  ์‹คํ–‰ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ƒ์„ธํ•œ ๊ธฐ๋ก์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ฝ˜์†”, Step Functions API, Amazon API Gateway ๋˜๋Š” Amazon CloudWatch Events์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

AWS Step Functions

AWS Step Functions ์ฝ˜์†”

AWS Step Functions๊ฐ€ ์‚ฌ์šฉ์ž ๋Œ€์‹  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ๊ธฐ๋ณธ ์ปดํ“จํŒ…์˜ ๋‹จ๊ณ„๋ฅผ ์ž‘๋™ ๋ฐ ํ™•์žฅํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ˆ˜์š” ์ฆ๊ฐ€์—๋„ ์•ˆ์ •์ ์œผ๋กœ ์‹คํ–‰๋˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

Amazon CloudWatch ๋Œ€์‹œ๋ณด๋“œ: AWS Step Functions๊ฐ€ ๋Œ€๊ทœ๋ชจ๋กœ AWS Lambda ํ•จ์ˆ˜๋ฅผ ํŠธ๋ฆฌ๊ฑฐ

AWS Step Functions๊ฐ€ AWS Lambda ํ•จ์ˆ˜๋ฅผ ํŠธ๋ฆฌ๊ฑฐ

AWS Step Functions๋Š” ์‰ฝ๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ˜์†”์— ์žˆ๋Š” ์„ค๋ช…์„ ๋”ฐ๋ผ ํด๋ฆญ ๋ช‡ ๋ฒˆ์œผ๋กœ ์ฒซ ๋ฒˆ์งธ Step Functions ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•˜์‹ญ์‹œ์˜ค.

๋ฌด๋ฃŒ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ