์žฌ์‹œ๋„ ์ด๋ฒคํŠธ

Eventarc์˜ ์žฌ์‹œ๋„ ํŠน์„ฑ์€ ์ „์†ก ๊ณ„์ธต์ธ Cloud Pub/Sub์˜ ์žฌ์‹œ๋„ ํŠน์„ฑ๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์žฌ์‹œ๋„ ์š”์ฒญ ๋ฐ Push ๋ฐฑ์˜คํ”„๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Eventarc์—์„œ ์„ค์ •ํ•˜๋Š” ๊ธฐ๋ณธ ๋ฉ”์‹œ์ง€ ๋ณด๊ด€ ๊ธฐ๊ฐ„์€ ์ง€์ˆ˜ ๋ฐฑ์˜คํ”„ ์ง€์—ฐ์ด ์žˆ๋Š” 24์‹œ๊ฐ„์ž…๋‹ˆ๋‹ค.

Eventarc ํŠธ๋ฆฌ๊ฑฐ์™€ ์—ฐ๊ฒฐ๋œ Pub/Sub ๊ตฌ๋…์„ ํ†ตํ•ด ์žฌ์‹œ๋„ ์ •์ฑ…์„ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํŠธ๋ฆฌ๊ฑฐ ์„ธ๋ถ€์ •๋ณด ํŽ˜์ด์ง€๋ฅผ ์—ฝ๋‹ˆ๋‹ค.
  2. ์ฃผ์ œ๋ฅผ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.
  3. ๊ตฌ๋… ํƒญ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

Eventarc์—์„œ ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋œ ๋ชจ๋“  ๊ตฌ๋…์€ projects/PROJECT_ID/subscriptions/eventarc-REGION-TRIGGER_ID-sub-SUBSCRIPTION_ID ํ˜•์‹์„ ์ทจํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ๋… ํ•œ๋„์— ๊ด€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ Pub/Sub ๋ฆฌ์†Œ์Šค ํ•œ๋„๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Pub/Sub์—์„œ ๋ฉ”์‹œ์ง€๋ฅผ ์ „๋‹ฌํ•˜๋ ค๊ณ  ํ•˜์ง€๋งŒ ๋Œ€์ƒ์—์„œ ์ด๋ฅผ ํ™•์ธํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ Pub/Sub๋Š” ์ตœ์†Œ ์ง€์ˆ˜ ๋ฐฑ์˜คํ”„ 10์ดˆ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ”์‹œ์ง€๋ฅผ ๋‹ค์‹œ ์ „์†กํ•ฉ๋‹ˆ๋‹ค. ๋Œ€์ƒ์ด ๊ณ„์† ๋ฉ”์‹œ์ง€๋ฅผ ํ™•์ธํ•˜์ง€ ์•Š์œผ๋ฉด ๊ฐ ์žฌ์‹œ๋„์˜ ์ง€์—ฐ์— ๋” ๋งŽ์€ ์‹œ๊ฐ„(์ตœ๋Œ€ 600์ดˆ)์ด ์ถ”๊ฐ€๋˜๊ณ  ๋ฉ”์‹œ์ง€๊ฐ€ ๋Œ€์ƒ์œผ๋กœ ๋‹ค์‹œ ์ „์†ก๋ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ Workflows๋Š” ์›Œํฌํ”Œ๋กœ ์‹คํ–‰์ด ์‹œ์ž‘๋˜๋Š” ์ฆ‰์‹œ ์ด๋ฒคํŠธ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋ฐ๋“œ ๋ ˆํ„ฐ ์ฃผ์ œ

๋Œ€์ƒ์ด ๋ฉ”์‹œ์ง€๋ฅผ ์ˆ˜์‹ ํ•˜์ง€ ์•Š์œผ๋ฉด ์ „๋‹ฌ๋˜์ง€ ์•Š์€ ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ๋“œ ๋ ˆํ„ฐ ์ฃผ์ œ(๋ฐ๋“œ ๋ ˆํ„ฐ ํ๋ผ๊ณ ๋„ ํ•จ)๋กœ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ๋“œ ๋ ˆํ„ฐ ์ฃผ์ œ๋Š” ๋Œ€์ƒ์ด ํ™•์ธํ•˜์ง€ ๋ชปํ•œ ๋ฉ”์‹œ์ง€๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Pub/Sub ์ฃผ์ œ๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜ Eventarc์—์„œ Pub/Sub ์ฃผ์ œ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์•„๋‹ˆ๋ผ Pub/Sub ๊ตฌ๋…์„ ๋งŒ๋“ค๊ฑฐ๋‚˜ ์—…๋ฐ์ดํŠธํ•  ๋•Œ ๋ฐ๋“œ ๋ ˆํ„ฐ ์ฃผ์ œ๋ฅผ ์„ค์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋ฉ”์‹œ์ง€ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

์žฌ์‹œ๋„๋ฅผ ๋ณด์ฆํ•  ์ˆ˜ ์—†๋Š” ์˜ค๋ฅ˜

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ Pub/Sub๋ฅผ ์ด๋ฒคํŠธ ์†Œ์Šค๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์ด๋ฒคํŠธ๊ฐ€ ์ „๋‹ฌ๋˜์ง€ ์•Š์œผ๋ฉด ์žฌ์‹œ๋„๋ฅผ ๋ณด์ฆํ•  ์ˆ˜ ์—†๋Š” ์˜ค๋ฅ˜๋ฅผ ์ œ์™ธํ•˜๊ณ  ์ด๋ฒคํŠธ๊ฐ€ ์ž๋™์œผ๋กœ ์žฌ์‹œ๋„๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ์†Œ์Šค์—์„œ ์›Œํฌํ”Œ๋กœ ๋Œ€์ƒ์— ๋Œ€ํ•œ ์ด๋ฒคํŠธ๋Š” ์›Œํฌํ”Œ๋กœ๊ฐ€ ์‹คํ–‰๋˜์ง€ ์•Š์œผ๋ฉด ์žฌ์‹œ๋„๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์›Œํฌํ”Œ๋กœ ์‹คํ–‰์ด ์‹œ์ž‘๋˜์—ˆ์ง€๋งŒ ๋‚˜์ค‘์— ์‹คํŒจํ•˜๋ฉด ์‹คํ–‰์€ ์žฌ์‹œ๋„๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„œ๋น„์Šค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๋ฉด ์›Œํฌํ”Œ๋กœ ๋‚ด์—์„œ ์˜ค๋ฅ˜์™€ ์žฌ์‹œ๋„๋ฅผ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ค‘๋ณต ์ด๋ฒคํŠธ

์ค‘๋ณต ์ด๋ฒคํŠธ๊ฐ€ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ์— ์ „๋‹ฌ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CloudEvents ์‚ฌ์–‘์— ๋”ฐ๋ผ source ์†์„ฑ๊ณผ id ์†์„ฑ์˜ ์กฐํ•ฉ์€ ๊ณ ์œ ํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜๋ฏ€๋กœ ๋™์ผํ•œ ์กฐํ•ฉ์„ ๊ฐ–๋Š” ๋ชจ๋“  ์ด๋ฒคํŠธ๋Š” ์ค‘๋ณต์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ๊ถŒ์žฅ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๋ฉฑ๋“ฑ์„ฑ ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ ๋ฉฑ๋“ฑ์„ฑ ๋งŒ๋“ค๊ธฐ

์žฌ์‹œ๋„ํ•  ์ˆ˜ ์žˆ๋Š” ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋Š” ๋‹ค์Œ ์ผ๋ฐ˜ ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉฑ๋“ฑ์„ฑ์„ ๊ฐ€์ ธ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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