HanSol's Oak Cask

ESB ์—ฐ๊ณ„๋ฐฉ์‹(vs API Gateway) ๋ณธ๋ฌธ

์šฉ์–ด, ๊ฐœ๋…

ESB ์—ฐ๊ณ„๋ฐฉ์‹(vs API Gateway)

HanSol_Lim 2025. 2. 20. 11:09

๐ŸŒ ESB (Enterprise Service Bus) ์—ฐ๊ณ„๋ฐฉ์‹์ด๋ž€?

**ESB (Enterprise Service Bus)**๋Š” ๊ธฐ์—… ๋‚ด ๋‹ค์–‘ํ•œ ์‹œ์Šคํ…œ ๊ฐ„์˜ ํ†ตํ•ฉ ๋ฐ ์—ฐ๊ณ„๋ฅผ ์œ„ํ•œ ์ค‘์•™ ํ†ตํ•ฉ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ์„œ๋กœ ๋‹ค๋ฅธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์„œ๋น„์Šค, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์„œ๋กœ ํšจ์œจ์ ์œผ๋กœ ํ†ต์‹ ํ•˜๊ณ  ๋ฐ์ดํ„ฐ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ค‘์•™ ํ—ˆ๋ธŒ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.


๐Ÿš€ 1. ESB์˜ ํ•ต์‹ฌ ๊ฐœ๋…

  • ์„œ๋น„์Šค ์ค‘์‹ฌ ์•„ํ‚คํ…์ฒ˜(SOA)์˜ ๊ตฌํ˜„์„ ์ง€์›ํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด ํ”Œ๋žซํผ.
  • ์ค‘์•™ ์ง‘์ค‘ํ˜• ๋ฒ„์Šค ๊ตฌ์กฐ๋ฅผ ํ†ตํ•ด ์‹œ์Šคํ…œ ๊ฐ„ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋‹จ์ˆœํ™”.
  • ๊ฐ ์‹œ์Šคํ…œ์ด ์ง์ ‘ ํ†ต์‹ ํ•˜์ง€ ์•Š๊ณ  ESB๋ฅผ ํ†ตํ•ด ๊ฐ„์ ‘์ ์œผ๋กœ ํ†ต์‹ ํ•˜์—ฌ ๋ณต์žก์„ฑ์„ ์ค„์ž„.
  • ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜, ํ”„๋กœํ† ์ฝœ ๋ณ€ํ™˜, ๋ฉ”์‹œ์ง€ ๋ผ์šฐํŒ… ๋“ฑ์˜ ๊ธฐ๋Šฅ ์ œ๊ณต.

๐Ÿ›  2. ESB ์—ฐ๊ณ„๋ฐฉ์‹์˜ ์ฃผ์š” ๊ธฐ๋Šฅ

๊ธฐ๋Šฅ ์„ค๋ช…

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

โšก 3. ESB ์—ฐ๊ณ„๋ฐฉ์‹์˜ ๊ตฌ์กฐ

[์‹œ์Šคํ…œ A]      [์‹œ์Šคํ…œ B]       [์‹œ์Šคํ…œ C]
     \\             |              //
      \\            |             //
        === [ESB ํ”Œ๋žซํผ] ===
                 ||
           [์‹œ์Šคํ…œ D]
  • ๊ฐ ์‹œ์Šคํ…œ์€ ESB์—๋งŒ ์—ฐ๊ฒฐ๋˜๋ฉฐ, ์ง์ ‘์ ์ธ ์‹œ์Šคํ…œ ๊ฐ„ ์—ฐ๊ฒฐ ๋ถˆํ•„์š”.
  • ์ค‘์•™ ESB๊ฐ€ ๋ฐ์ดํ„ฐ์˜ ์ „์†ก, ๋ณ€ํ™˜, ๋ผ์šฐํŒ…์„ ๋‹ด๋‹น.

๐Ÿ“ˆ 4. ESB ์—ฐ๊ณ„๋ฐฉ์‹์˜ ์žฅ์ ๊ณผ ๋‹จ์ 

โœ… ์žฅ์ 

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

โŒ ๋‹จ์ 

  • ๋ณต์žกํ•œ ์ดˆ๊ธฐ ์„ค์ •: ESB๋ฅผ ์ฒ˜์Œ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๋งŽ์ด ์†Œ์š”๋  ์ˆ˜ ์žˆ์Œ.
  • ๋น„์šฉ: ์ƒ์šฉ ESB ์†”๋ฃจ์…˜์€ ๋„์ž… ๋น„์šฉ์ด ๋†’์„ ์ˆ˜ ์žˆ์Œ.
  • ์„ฑ๋Šฅ ๋ณ‘๋ชฉ ํ˜„์ƒ: ๋ชจ๋“  ํŠธ๋ž˜ํ”ฝ์ด ESB๋ฅผ ๊ฑฐ์น˜๊ธฐ ๋•Œ๋ฌธ์— ESB๊ฐ€ ์„ฑ๋Šฅ ๋ณ‘๋ชฉ์ด ๋  ์ˆ˜ ์žˆ์Œ.

๐ŸŒ 5. ESB ์—ฐ๊ณ„๋ฐฉ์‹์˜ ์‹ค์ œ ํ™œ์šฉ ์‚ฌ๋ก€

  1. ๋Œ€๊ธฐ์—…์˜ ์‹œ์Šคํ…œ ํ†ตํ•ฉ: ERP, CRM, SCM ์‹œ์Šคํ…œ ๊ฐ„ ์‹ค์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ ์—ฐ๊ณ„.
  2. ๊ธˆ์œต๊ถŒ: ์ธํ„ฐ๋„ท ๋ฑ…ํ‚น, ๋ชจ๋ฐ”์ผ ๋ฑ…ํ‚น๊ณผ ๋‚ด๋ถ€ ๊ฒฐ์ œ ์‹œ์Šคํ…œ ๊ฐ„ ์•ˆ์ „ํ•œ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ.
  3. ๊ณต๊ณต๊ธฐ๊ด€: ์ •๋ถ€ ๊ธฐ๊ด€ ๊ฐ„ ์ •๋ณด ๊ณต์œ ๋ฅผ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํ‘œ์ค€ํ™” ๋ฐ ์—ฐ๊ณ„.
  4. e-์ปค๋จธ์Šค: ์ฃผ๋ฌธ ์ฒ˜๋ฆฌ ์‹œ์Šคํ…œ๊ณผ ๋ฌผ๋ฅ˜, ๊ฒฐ์ œ ์‹œ์Šคํ…œ ๊ฐ„ ์—ฐ๊ณ„.

๐ŸŽฏ 6. ESB ์—ฐ๊ณ„๋ฐฉ์‹ vs ๋‹ค๋ฅธ ์—ฐ๊ณ„๋ฐฉ์‹ ๋น„๊ต

  Point-to-Point  ESB ์—ฐ๊ณ„๋ฐฉ์‹ API Gateway
๊ตฌ์กฐ ์‹œ์Šคํ…œ ๊ฐ„ ์ง์ ‘ ์—ฐ๊ฒฐ ์ค‘์•™ ๋ฒ„์Šค๋ฅผ ํ†ตํ•œ ์—ฐ๊ฒฐ API ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ†ตํ•œ ์—ฐ๊ฒฐ
ํ™•์žฅ์„ฑ ๋‚ฎ์Œ (์—ฐ๊ฒฐ ์ฆ๊ฐ€ ์‹œ ๋ณต์žก์„ฑ ์ฆ๊ฐ€) ๋†’์Œ (๋‹จ์ผ ์—ฐ๊ฒฐ๋งŒ ํ•„์š”) ๋งค์šฐ ๋†’์Œ (๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์นœํ™”์ )
์œ ์ง€๋ณด์ˆ˜ ์–ด๋ ค์›€ ์šฉ์ด ๋งค์šฐ ์šฉ์ด
์„ฑ๋Šฅ ๋น ๋ฆ„ (๋‹จ์ผ ์—ฐ๊ฒฐ) ์ค‘๊ฐ„ (์ค‘์•™ ์ง‘์ค‘ํ˜•) ๋น ๋ฆ„ (๋ถ„์‚ฐํ˜• ๊ตฌ์กฐ)
๋น„์šฉ ๋‚ฎ์Œ ์ค‘๊ฐ„ ~ ๋†’์Œ ๋‚ฎ์Œ ~ ์ค‘๊ฐ„
์ ํ•ฉํ•œ ํ™˜๊ฒฝ ์†Œ๊ทœ๋ชจ ์‹œ์Šคํ…œ ๋Œ€๊ทœ๋ชจ ๊ธฐ์—… ์‹œ์Šคํ…œ ํ†ตํ•ฉ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค

๐Ÿ”‘ 7. ESB ์—ฐ๊ณ„๋ฐฉ์‹์„ ์„ ํƒํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ

  • ๊ธฐ์—… ๋‚ด ๋‹ค์–‘ํ•œ ์‹œ์Šคํ…œ์„ ํ†ตํ•ฉํ•˜๊ณ ์ž ํ•  ๋•Œ
  • ์ด๊ธฐ์ข… ์‹œ์Šคํ…œ ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ๋ฐ ์„œ๋น„์Šค ์—ฐ๊ณ„๊ฐ€ ํ•„์š”ํ•  ๋•Œ
  • ์‹œ์Šคํ…œ ๊ฐ„ ๋ณต์žกํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค์˜ ์ž๋™ํ™”๋ฅผ ์›ํ•  ๋•Œ
  • ํ–ฅํ›„ ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์ด ์ค‘์š”ํ•œ ํ”„๋กœ์ ํŠธ

๐Ÿ’ฌ ๊ฒฐ๋ก 

ESB ์—ฐ๊ณ„๋ฐฉ์‹์€ ๊ธฐ์—… ๋‚ด ๋‹ค์–‘ํ•œ ์‹œ์Šคํ…œ ๊ฐ„์˜ ํ†ตํ•ฉ, ๋ฐ์ดํ„ฐ ํ˜ธํ™˜์„ฑ ํ™•๋ณด, ์„œ๋น„์Šค ์žฌ์‚ฌ์šฉ์„ฑ ์ฆ๋Œ€์— ์ตœ์ ํ™”๋œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
๋ณต์žกํ•œ ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์—์„œ๋Š” ์œ ์ง€๋ณด์ˆ˜ ๋น„์šฉ ์ ˆ๊ฐ๊ณผ ํšจ์œจ์ ์ธ ์šด์˜์„ ์œ„ํ•ด ESB ์—ฐ๊ณ„๋ฐฉ์‹์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

๐Ÿ“Œ "ESB๋Š” ๋‹จ์ˆœํ•œ ์—ฐ๊ฒฐ์ด ์•„๋‹ˆ๋ผ, ๊ธฐ์—… ์‹œ์Šคํ…œ ๊ฐ„ ํšจ์œจ์ ์ด๊ณ  ์•ˆ์ •์ ์ธ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ํ•ต์‹ฌ ์ธํ”„๋ผ์ž…๋‹ˆ๋‹ค." ๐ŸŒŸ

 

 

 


๐Ÿค”  API Gateway๊ฐ€ ์ข‹์•„ ๋ณด์—ฌ๋„ SI์—์„œ ESB๋ฅผ ์„ ํƒํ•˜๋Š” ์ด์œ 

API Gateway๋Š” ํ˜„๋Œ€์ ์ธ ์•„ํ‚คํ…์ฒ˜, ํŠนํžˆ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์™€ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ•„์ˆ˜์ ์ธ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ **ESB (Enterprise Service Bus)**๋Š” ํŠน์ • ํ™˜๊ฒฝ๊ณผ ์š”๊ตฌ์‚ฌํ•ญ์—์„œ ์—ฌ์ „ํžˆ ๋…๋ณด์ ์ธ ์žฅ์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์™œ ESB๊ฐ€ API Gateway๋ณด๋‹ค ์ ํ•ฉํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ์ƒ์„ธํ•œ ๋ถ„์„์ž…๋‹ˆ๋‹ค.


โšก 1. ์‹œ์Šคํ…œ ํ†ตํ•ฉ ๋ฒ”์œ„์™€ ๋ณต์žก์„ฑ

โœ… ESB๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ:

  • ๊ธฐ์—… ๋‚ด์— ๋ ˆ๊ฑฐ์‹œ ์‹œ์Šคํ…œ, ERP, CRM, ๋ฉ”์ธํ”„๋ ˆ์ž„, FTP ์„œ๋ฒ„ ๋“ฑ์˜ ์ด๊ธฐ์ข… ์‹œ์Šคํ…œ์ด ๋‹ค์ˆ˜ ์กด์žฌํ•  ๋•Œ.
  • ์‹œ์Šคํ…œ ๊ฐ„ ๋ฐ์ดํ„ฐ ๊ตํ™˜์ด ๋‹จ์ˆœ API ํ˜ธ์ถœ์ด ์•„๋‹Œ ํ”„๋กœํ† ์ฝœ ๋ณ€ํ™˜, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜, ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง•์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ.
  • ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธˆ์œต๊ถŒ, ๊ณต๊ณต๊ธฐ๊ด€, ๋Œ€ํ˜• ์ œ์กฐ์—…์ฒด์—์„œ๋Š” ์—ฌ์ „ํžˆ SOAP, JMS, MQ์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ๊ณผ์˜ ์—ฐ๊ณ„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿšซ API Gateway์˜ ํ•œ๊ณ„:

  • HTTP ๊ธฐ๋ฐ˜ REST API์— ์ตœ์ ํ™”๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋น„HTTP ํ†ต์‹ (์˜ˆ: JMS, FTP, SOAP)์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ.
  • ๋‹จ์ˆœํ•œ ๋ผ์šฐํŒ…๊ณผ ์ •์ฑ… ์ ์šฉ์—๋Š” ๊ฐ•ํ•˜์ง€๋งŒ, ๋ณต์žกํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์€ ์ง€์›ํ•˜์ง€ ์•Š์Œ.

๐Ÿ— 2. ๋น„์ฆˆ๋‹ˆ์Šค ํ”„๋กœ์„ธ์Šค ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ (BPM)

โœ… ESB์˜ ๊ฐ•์ :

  • ๋‹ค์ค‘ ์„œ๋น„์Šค ํ˜ธ์ถœ๊ณผ ํ”„๋กœ์„ธ์Šค ์ œ์–ด ํ๋ฆ„์„ ์กฐ์œจํ•  ์ˆ˜ ์žˆ์Œ.
  • ์˜ˆ๋ฅผ ๋“ค์–ด, ์ฃผ๋ฌธ ์ฒ˜๋ฆฌ ์‹œ ๊ณ ๊ฐ ํ™•์ธ → ๊ฒฐ์ œ ์Šน์ธ → ์žฌ๊ณ  ํ™•์ธ → ๋ฐฐ์†ก ์ง€์‹œ ๋“ฑ์˜ ์—…๋ฌด ํ๋ฆ„์„ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Œ.
  • ๋™๊ธฐ/๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ๋ชจ๋‘ ์œ ์—ฐํ•˜๊ฒŒ ์ง€์›ํ•˜์—ฌ ๋ณต์žกํ•œ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ”„๋กœ์„ธ์Šค์— ์ตœ์ ํ™”.

๐Ÿšซ API Gateway์˜ ํ•œ๊ณ„:

  • ๋‹จ์ผ API ํ˜ธ์ถœ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ์ ํ•ฉํ•˜์ง€๋งŒ, ์—ฌ๋Ÿฌ ์„œ๋น„์Šค ๊ฐ„์˜ ๋ณต์žกํ•œ ์ƒํ˜ธ์ž‘์šฉ๊ณผ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ฒ˜๋ฆฌ์—๋Š” ํ•œ๊ณ„๊ฐ€ ์žˆ์Œ.
  • ํ”„๋กœ์„ธ์Šค ์ œ์–ด๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐฑ์—”๋“œ ์„œ๋น„์Šค์—์„œ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•จ.

๐Ÿ”’ 3. ๋ฐ์ดํ„ฐ ๋ฐ ํ”„๋กœํ† ์ฝœ ๋ณ€ํ™˜

โœ… ESB์˜ ๊ฐ•์ :

  • ๋ฐ์ดํ„ฐ ํฌ๋งท ๋ณ€ํ™˜ (์˜ˆ: XML ↔ JSON, CSV ↔ JSON)
  • ํ”„๋กœํ† ์ฝœ ๋ณ€ํ™˜ (์˜ˆ: HTTP ↔ JMS, SOAP ↔ REST)
  • ์ด๋Ÿฐ ๊ธฐ๋Šฅ์ด ๋‚ด์žฅ๋˜์–ด ์žˆ์–ด, ์„œ๋กœ ๋‹ค๋ฅธ ๊ธฐ์ˆ  ์Šคํƒ ๊ฐ„์˜ ๋งค๋„๋Ÿฌ์šด ํ†ตํ•ฉ์„ ์ง€์›.

๐Ÿšซ API Gateway์˜ ํ•œ๊ณ„:

  • ๊ธฐ๋ณธ์ ์ธ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜์€ ์ผ๋ถ€ ์ง€์›ํ•˜์ง€๋งŒ, ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๋งคํ•‘๊ณผ ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜์—๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ.
  • ๋ณต์žกํ•œ ๋ณ€ํ™˜ ์ž‘์—…์€ ๋ณ„๋„์˜ ์„œ๋น„์Šค ๊ณ„์ธต์—์„œ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•จ.

๐Ÿ”„ 4. ์‹ ๋ขฐ์„ฑ๊ณผ ๋‚ด๊ฒฐํ•จ์„ฑ (Fault Tolerance)

โœ… ESB์˜ ๊ฐ•์ :

  • ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง€ ์ฒ˜๋ฆฌ ๋ฐ ๋‚ด๊ฒฐํ•จ์„ฑ(fault tolerance) ๊ธฐ๋Šฅ ์ œ๊ณต.
  • ์„œ๋น„์Šค ๊ฐ„ ์—ฐ๊ฒฐ์ด ์ผ์‹œ์ ์œผ๋กœ ์‹คํŒจํ•˜๋”๋ผ๋„ ๋ฉ”์‹œ์ง€๋ฅผ ํ์— ์ €์žฅํ•˜๊ณ , ์„œ๋น„์Šค๊ฐ€ ๋ณต๊ตฌ๋˜๋ฉด ์ž๋™ ์žฌ์ฒ˜๋ฆฌ.
  • ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธˆ์œต ๊ฑฐ๋ž˜๋‚˜ ๋ฌผ๋ฅ˜ ๋ฐฐ์†ก ์‹œ์Šคํ…œ๊ณผ ๊ฐ™์ด ๋ฐ์ดํ„ฐ ์œ ์‹ค์ด ์น˜๋ช…์ ์ธ ๊ฒฝ์šฐ ESB์˜ ์•ˆ์ •์„ฑ์ด ํ•„์ˆ˜.

๐Ÿšซ API Gateway์˜ ํ•œ๊ณ„:

  • ์ฃผ๋กœ ๋™๊ธฐ์‹ ์š”์ฒญ-์‘๋‹ต ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์ผ์‹œ์ ์ธ ์‹คํŒจ ์ฒ˜๋ฆฌ ๊ธฐ๋Šฅ์€ ์ƒ๋Œ€์ ์œผ๋กœ ์•ฝํ•จ.
  • ๋ณต์›๋ ฅ ์žˆ๋Š” ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•ด์„œ๋Š” ์ถ”๊ฐ€์ ์ธ ๋ฉ”์‹œ์ง€ ํ๋‚˜ ๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ํ•„์š”.

๐Ÿ’ธ 5. ์žฅ๊ธฐ์ ์ธ ์šด์˜ ๋น„์šฉ ๋ฐ ROI

โœ… ESB์˜ ๊ฐ•์ :

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

๐Ÿšซ API Gateway์˜ ํ•œ๊ณ„:

  • API๋ฅผ ์ง์ ‘ ํ˜ธ์ถœํ•˜๋Š” ๊ตฌ์กฐ์ด๋ฏ€๋กœ, ์„œ๋น„์Šค ๊ฐ„ ์˜์กด์„ฑ์ด ์ฆ๊ฐ€ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‹œ์Šคํ…œ ์ถ”๊ฐ€ ์‹œ ๊ฐ API์— ๋งž์ถ˜ ์กฐ์ •์ด ํ•„์š”.
  • ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์—๋Š” ์œ ๋ฆฌํ•˜์ง€๋งŒ, ๋Œ€๊ทœ๋ชจ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ์—๋Š” ์˜คํžˆ๋ ค ๋น„์šฉ์ด ์ฆ๊ฐ€ํ•  ์ˆ˜ ์žˆ์Œ.

๐ŸŒ 6. ์‹ค์ œ ์„ ํƒ ๊ธฐ์ค€

  

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

๐ŸŽฏ ๊ฒฐ๋ก : ESB๊ฐ€ ์—ฌ์ „ํžˆ ํ•„์š”ํ•œ ์ด์œ 

  • ๋Œ€๊ทœ๋ชจ ๊ธฐ์—… ์‹œ์Šคํ…œ์€ ์—ฌ์ „ํžˆ ์ด๊ธฐ์ข… ์‹œ์Šคํ…œ ๊ฐ„์˜ ๊นŠ์€ ํ†ตํ•ฉ๊ณผ ๋ณต์žกํ•œ ์—…๋ฌด ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ESB๋Š” ๋‹จ์ˆœํ•œ API ํ˜ธ์ถœ์„ ๋„˜์–ด์„œ, ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜, ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜, ๋‚ด๊ฒฐํ•จ์„ฑ, ํ”„๋กœํ† ์ฝœ ํ˜ธํ™˜์„ฑ ๋“ฑ API Gateway๊ฐ€ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š” ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ํŠนํžˆ ๊ธˆ์œต, ํ†ต์‹ , ์ œ์กฐ์—…๊ณผ ๊ฐ™์€ ๋Œ€ํ˜• ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ™˜๊ฒฝ์—์„œ๋Š” ESB์˜ ์•ˆ์ •์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

๐Ÿ’ก ํ•œ ์ค„ ์š”์•ฝ:
“๋ชจ๋“  ๊ธฐ์ˆ ์—๋Š” ์ ํ•ฉํ•œ ์‚ฌ์šฉ์ฒ˜๊ฐ€ ์žˆ๋‹ค. API Gateway๋Š” ๋น ๋ฅด๊ณ  ๊ฐ„๊ฒฐํ•œ ์„œ๋น„์Šค ํ†ต์‹ ์—, ESB๋Š” ๋ณต์žกํ•œ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ๊ณผ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•ด ์„ค๊ณ„๋˜์—ˆ๋‹ค.” ๐Ÿš€โœจ