DevLog ๐Ÿ˜ถ

[MSA] MicroService, SoA ๋ณธ๋ฌธ

โœ๏ธ/CS

[MSA] MicroService, SoA

dolmeng2 2022. 10. 20. 23:36

- MSA ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ธํ”„๋ผ์  ์ง€์‹์ด ๋ถ€์กฑํ•œ ๊ฒƒ ๊ฐ™์•„์„œ ๊ฐœ๋… ์ •๋ฆฌ๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค.

- ์•„๋งˆ ์กฐ๊ธˆ ๋” ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ž‘์„ฑํ•ด๋‚˜๊ฐ€์•ผ ๋  ๊ฒƒ ๊ฐ™๋‹ค.

 


โœ”๏ธ SoA (Service Oriented Architecture)

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

 

--

 

โœ”๏ธ MicroService with SoA

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

--

 

โœ”๏ธ Enterprice Service Bus (ESB)

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

--

 

โœ”๏ธ MicroService์˜ ์„ค๊ณ„ ์›์น™

  • ๋น„์ฆˆ๋‹ˆ์Šค ์—ญ๋Ÿ‰ ์ค‘์‹ฌ ๋ชจ๋ธ
    • ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์—…๋ฐ์ดํŠธ ๋ฐ ์ˆ˜์ • ์‹œ ๊ธฐ์กด์— ์ •์˜ํ–ˆ๋˜ ๊ฐœ๋…์œผ๋กœ ์ถ”์ƒํ™”๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ๋œ๋‹ค.
  • ๋Š์Šจํ•œ ๊ฒฐํ•ฉ
    • ๊ฐ ์„œ๋น„์Šค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋Š์Šจํ•˜๊ฒŒ ๊ฒฐํ•ฉํ•ด์•ผ ํ•œ๋‹ค.
    • ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์—์„œ๋Š” ์ž์‹ ์˜ ๋„๋ฉ”์ธ ๋‚ด์— ์žˆ๋Š” ์ •๋ณด๋งŒ ๋ฐ˜ํ™˜ํ•ด์•ผ ํ•œ๋‹ค.
  • ๋‹จ์ผ ์ฑ…์ž„
    • ๋‹จ์ผํ•œ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์ฑ…์ž„๋งŒ ๊ฐ€์ ธ์•ผ ํ•˜๋ฉฐ, ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค์— ์˜ํ•ด์„œ ์™„์ „ํžˆ ์บก์Šํ™”๋˜์–ด์•ผ ํ•œ๋‹ค.
  • ๊ตฌํ˜„ ์€๋‹‰
    • ๋‚ด๋ถ€ ์„ธ๋ถ€ ์‚ฌํ•ญ์€ ๋…ธ์ถœ๋˜์–ด์„œ๋Š” ์•ˆ ๋œ๋‹ค.
  • ๊ฒฉ๋ฆฌ
    • ์‹œ์Šคํ…œ ์ธํ”„๋ผ๋‚˜ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ถ„๋ฆฌ๋˜์–ด์•ผ ํ•œ๋‹ค.
  • ๋…๋ฆฝ์ ์ธ ๋ฐฐํฌ
    • ๊ฐ ์„œ๋น„์Šค๋Š” ๋…๋ฆฝ์ ์œผ๋กœ ๋ฐฐํฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์•ผ ํ•œ๋‹ค.
  • ์‹คํŒจ๋ฅผ ์œ„ํ•œ ๋นŒ๋“œ
    • ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์ตœ๋Œ€ํ•œ ๋งค๋„๋Ÿฝ๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋„๋ก ๊ตฌ์„ฑํ•ด์•ผ ํ•˜๋ฉฐ, ๋ณต๊ตฌ ๋ฐฉ์•ˆ์„ ์ •์˜ํ•ด์•ผ ํ•œ๋‹ค.
    • UpStream: ์†Œ๋น„์ž์—๊ฒŒ ์–ด๋–ป๊ฒŒ ์˜ค๋ฅ˜๋ฅผ ์•Œ๋ฆด ๊ฒƒ์ธ์ง€, ํ˜น์€ ์•Œ๋ฆฌ์ง€ ์•Š์„ ๊ฒƒ์ธ์ง€ ์ •์˜
    • DownStream: ํƒ€ ์„œ๋น„์Šค๋‚˜ DB ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์–ด๋–ป๊ฒŒ ๋Œ€์‘ํ•  ๊ฒƒ์ธ์ง€ ์ •์˜
    • Logging: ๋กœ๊ทธ์˜ ๋นˆ๋„, ์ •๋ณด์˜ ์–‘, ์•ก์„ธ์Šค ๋ฐฉ๋ฒ• ๊ณ ๋ ค
    • Monitoring: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์š”์†Œ์—์„œ ์˜๋ฏธ ์žˆ๋Š” ์ •๋ณด ๊ณ ๋ ค
    • Warning: ์ด์ƒ ํ˜„์ƒ์— ๋Œ€ํ•œ ์—ฐ๊ด€ ๋ถ„์„ ํ•„์š”
    • Recovery: ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์–ด๋–ป๊ฒŒ ์ •์ƒ ์ƒํƒœ๋กœ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ๋Š”๊ฐ€
    • Rollback: ์™ธ๋ถ€ ์„œ๋น„์Šค์˜ ์žฅ์•  ์ƒํ™ฉ์— ๋Œ€๋น„ํ•œ ๋กค๋ฐฑ ๋งค์ปค๋‹ˆ์ฆ˜์˜ ์ œ๊ณต
  • ํ™•์žฅ์„ฑ

  • ์™ผ์ชฝ์—์„œ ‘์ถ”์ฒœ’์ด๋ผ๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•œ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ ์ „๋ฐ˜์ ์ธ ๊ฒฐํ•ฉ๋„๋ฅผ ๋‚ฎ์ถ”๊ธฐ ์œ„ํ•ด ์ธ์Šคํ„ด์Šค ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ™•์žฅํ•œ ๋ชจ์Šต์ด๋‹ค.
  • ์ž๋™ํ™”
    • ์ž๋™ํ™”๋œ CI/CD ๊ตฌ์ถ• ํ•„์š”

--

 

โœ”๏ธ DDD (Domain-Driven Design)

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

---

 

โœ”๏ธ Bounded Context (๊ฒฝ๊ณ„๋œ ์ปจํ…์ŠคํŠธ)

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

---

 

โœ”๏ธ MicroService with DDD

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

---

 

โœ”๏ธ Reactive Programming

subscribe(::getData).whenDone(::print)

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

---

 

โœ”๏ธ IaaS vs PaaS vs SaaS

  • IaaS (Infrastrcture as a Service)
    • ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋ชจ๋ธ
    • ํด๋ผ์šฐ๋“œ ์‚ฌ์šฉ์ž๊ฐ€ ์ง์ ‘ ํ”Œ๋žซํผ์—์„œ ์ƒ์„ฑ๋œ ์—ฌ๋Ÿฌ ์„œ๋ฒ„๋ฅผ ์œ ์ง€ ๋ฐ ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค.
    • ex) ์•„๋งˆ์กด ์›น ์„œ๋น„์Šค, ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์• ์ € VM…
  • PaaS (Platform as a Service)
    • ๊ณ ๊ฐ์ด ์œ ์ง€๋ณด์ˆ˜ํ•  ํ•„์š” ์—†์ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๋ฐ ์‹คํ–‰, ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.
    • ex) ๊ตฌ๊ธ€ ์•ฑ ์—”์ง„, IBM ๋ธ”๋ฃจ๋ฏน์Šค, ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์• ์ € ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค…
  • SaaS (Software as a Service)
    • ์‚ฌ์šฉ์ž๊ฐ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์†Œํ”„ํŠธ์›จ์–ด์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์ด์‹ฟ.
    • ์†Œํ”„ํŠธ์›จ์–ด ์‹คํ–‰์— ํ•„์š”ํ•œ ๋ชจ๋“  ์š”์†Œ๋Š” ํ”Œ๋žซํผ ๋‚ด๋ถ€์—์„œ ๊ด€๋ฆฌ๋˜๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ์„œ๋น„์Šค ์ œ๊ณต์ž๊ฐ€ ๋ชจ๋“  ๊ฒƒ์„ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ด€๋ฆฌํ•  ํ•„์š”๊ฐ€ ์•„๋ฌด๊ฒƒ๋„ ์—†๋‹ค.
    • ex) ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์˜คํ”ผ์Šค 365…
Comments