arrow-left

All pages
gitbookPowered by GitBook
1 of 3

Loading...

Loading...

Loading...

Connenctor

hashtag
1. Connectors

hashtag
A. Context Connectors

์š”์ฒญ ์ƒํƒœ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ API ์š”์ฒญ์— ํ™œ์šฉ๋˜๋Š” ์ปค๋„ฅํ„ฐ์ž…๋‹ˆ๋‹ค. ์ ‘๊ทผ ์ œ์–ด ๋ฐ stateless ์ปค๋„ฅํ„ฐ๋ฅผ ์—ฐ๊ณ„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GraphQL์˜ Subscription ํƒ€์ž…์ด๋‚˜ WebSocket ํ”„๋กœํ† ์ฝœ ๋“ฑ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ๋ถ„์‚ฐ ์‹œ์Šคํ…œ์— ์ค‘์•™ ๋ฉ”์‹œ์ง• ์„œ๋น„์Šค๋ฅผ ์ œ๊ณต ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์—” publish, subscribe ์ปค๋„ฅํ„ฐ๋ฅผ ๊ตฌํ˜„ํ•˜์ง€ ์•Š์•„๋„ ๋ฌด๊ด€ํ•ฉ๋‹ˆ๋‹ค.

hashtag
B. Stateless Connectors

์š”์ฒญ ์ƒํƒœ๊ฐ€ ์—†๋Š” ์ปค๋„ฅํ„ฐ์ž…๋‹ˆ๋‹ค.

hashtag

Delegator

hashtag
1. MoleculerJS

MoleculerJS ์–ด๋Œ‘ํ„ฐ๋กœ API Gateway ํ•จ๊ป˜์™€ ์•„๋ž˜์˜ ํ”ผ์–ด ๋ชจ๋“ˆ์„ ํ™œ์šฉ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • - OIDC ๋ฐ Identity Provider๋ฅผ ์ œ๊ณตํ•˜๋Š” IAM ๋ชจ๋“ˆ, ์ธ์ฆ ์ปจํ…์ŠคํŠธ์— ์—ฐ๋™ ๊ฐ€๋Šฅ

map

์ค‘์•™ ๋ฉ”์‹œ์ง• ์„œ๋น„์Šค์—์„œ ์ด๋ฒคํŠธ๋ฅผ ๊ตฌ๋…ํ•ฉ๋‹ˆ๋‹ค.

๋ถ„์‚ฐ ์„œ๋น„์Šค ๋ฐ ์•ก์…˜, ์ค‘์•™ ๋ฉ”์‹œ์ง• ์„œ๋น„์Šค์˜ ์ƒํƒœ ํ™•์ธ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

reporter

O

์ถœ์ฒ˜ ๋…ธ๋“œ๋กœ ๋””๋ฒ„๊ทธ ๋ฉ”์„ธ์ง€๋ฅผ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

logger

O

Gateway์˜ ๋กœ๊น… ์ธ์Šคํ„ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ปค๋„ฅํ„ฐ

์–ด๋Œ‘ํ„ฐ์— ์œ„์ž„

์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•œ ์ปค๋„ฅํ„ฐ

๊ฐœ์š”

call

O

params, map

๋ถ„์‚ฐ ์„œ๋น„์Šค ์•ก์…˜์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

publish

O

params

์ค‘์•™ ๋ฉ”์‹œ์ง• ์„œ๋น„์Šค์— ์ด๋ฒคํŠธ๋ฅผ ๋ฐœํ–‰ํ•ฉ๋‹ˆ๋‹ค.

subscribe

์ปค๋„ฅํ„ฐ

์–ด๋Œ‘ํ„ฐ์— ์œ„์ž„

๊ฐœ์š”

map

X

Inline JavaScript Function String์„ VM์—์„œ ํ•ด์„ํ•˜์—ฌ ์ฃผ์–ด์ง„ ๊ฐ์ฒด๋‚˜ ์‘๋‹ต ๊ฐ์ฒด๋ฅผ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

params

X

์š”์ฒญ ํŽ˜์ด๋กœ๋“œ์—์„œ ์œ„์˜ ํƒ€ ์ปค๋„ฅํ„ฐ๋“ค๋กœ ์ „๋‹ฌ ํ•  ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

discover

O

๋ถ„์‚ฐ ์„œ๋น„์Šค์˜ ์—…๋ฐ์ดํŠธ๋‚˜ ์ข…๋ฃŒ๋ฅผ ๊ฐ์ง€ํ•˜๊ณ , ๋…ธ๋“œ, ์„œ๋น„์Šค API Schema, ์•ก์…˜ ๋ฐ ์ด๋ฒคํŠธ ๊ตฌ๋…, ๋ฐœํ–‰ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•ฉ๋‹ˆ๋‹ค.

health

O

O

moleculer-filearrow-up-right - ํŒŒ์ผ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ/๊ด€๋ฆฌ ๋ชจ๋“ˆ (GCP Storage bucket backend / File System backend ์ง€์›)

  • moleculer-i18narrow-up-right - ๊ตญ์ œํ™” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ๋ฐ ์กฐํšŒ ๋ชจ๋“ˆ (MySQL/Maria DBMS ํ•„์š”)

  • moleculer-consolearrow-up-right - ํ™•์žฅ ๊ฐ€๋Šฅํ•œ Admin Console WebApp (React.js)

    • API document component ๊ธฐ๋ณธ ์ œ๊ณต (moleculer-apiarrow-up-right ํ˜ธํ™˜)

    • IAM component ๊ธฐ๋ณธ ์ œ๊ณต (moleculer-iamarrow-up-right ํ˜ธํ™˜)

    • File management component ๊ธฐ๋ณธ ์ œ๊ณต ( ํ˜ธํ™˜)

    • Translation component ๊ธฐ๋ณธ ์ œ๊ณต ( ํ˜ธํ™˜)

  • moleculer-iamarrow-up-right
    moleculer-filearrow-up-right
    moleculer-i18narrow-up-right

    Service Broker

    hashtag
    Service Brokers

    API Gateway๋Š” ์ตœ์ดˆ์— Moleculerarrow-up-right MSA ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ฐฐ๊ฒฝ์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์ง€๋งŒ, ํ™•์žฅ์„ฑ์„ ์œ„ํ•ด์„œ ๊ฐ•ํ•œ ๋””์ปคํ”Œ๋ง์„ ๋ฐฉ์นจ์œผ๋กœ ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    API Gateway๋Š” ๋ถ„์‚ฐ ์„œ๋น„์Šค ๋ฐ ์ค‘์•™ ๋ฉ”์‹œ์ง• ์„œ๋น„์Šค์™€์˜ ๋„คํŠธ์›Œํ‚น์„ ์„œ๋น„์Šค ๋ธŒ๋กœ์ปค์—๊ฒŒ ์œ„์ž„ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋น„์Šค ๋ธŒ๋กœ์ปค๋Š” ๋ถ„์‚ฐ ์„œ๋น„์Šค๋“ค์˜ ๋„คํŠธ์›Œํ‚น์„ ์œ„์ž„ ๋ฐ›์œผ๋ฉฐ, call, publish, subscribe, discover, report ๋“ฑ์˜ ์ฃผ์š” ๋„คํŠธ์›Œํ‚น ์ธํ„ฐํŽ˜์ด์Šค(์ปค๋„ฅํ„ฐ)๋ฅผ ๊ฐ€์ง„ ์–ด๋Œ‘ํ„ฐ์™€ ๊ฒฐํ•ฉ๋ฉ๋‹ˆ๋‹ค.

    Service Broker

    ์„œ๋น„์Šค ๋ธŒ๋กœ์ปค๋Š” ๋ถ„์‚ฐ ์„œ๋น„์Šค๋“ค์˜ ๋„คํŠธ์›Œํ‚น์„ ์œ„์ž„ ๋ฐ›์œผ๋ฉฐ, call, publish, subscribe, discover, report ๋“ฑ์˜ ์ฃผ์š” ๋„คํŠธ์›Œํ‚น ์ธํ„ฐํŽ˜์ด์Šค(์ปค๋„ฅํ„ฐ)๋ฅผ ๊ฐ€์ง„ ์–ด๋Œ‘ํ„ฐ์™€ ๊ฒฐํ•ฉ๋ฉ๋‹ˆ๋‹ค.

    hashtag
    2. Delegator

    ๋ธŒ๋กœ์ปค๋Š” ์œ„ ์ปค๋„ฅํ„ฐ๋“ค์˜ ํŠน์ • ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋‹จ์ผํ•œ ๊ฐ์ฒด๋กœ ๊ตฌํ˜„๋ฉ๋‹ˆ๋‹ค.

    hashtag
    A. Moleculer

    • MoleculerAPIGateway ์„œ๋น„์Šค๋ฅผ minxin์— ํฌํ•จํ•ด moleculer.ServiceSchema๋ฅผ ํ™•์žฅ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • MoleculerServiceBroker๋ฅผ ์ด์šฉํ•ด ์ง์ ‘ moleculer.ServiceSchema๋ฅผ ๊ตฌํ˜„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    hashtag
    B. Others

    ๊ธฐํƒ€ MSA ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‘์šฉํ•ด ServiceBroker ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    hashtag