๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์ž๊ฒฉ์ฆ ์žˆ์œผ๋ฉด ์ข‹์ง€/์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ

[์‹ค๊ธฐ] ์ดˆ์ดˆ์ดˆ์š”์•ฝ - 5์žฅ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„

by ์ž„๋ฆฌ๋‘ฅ์ ˆ 2024. 10. 15.
๋ฐ˜์‘ํ˜•

์ธ๋„ค์ผ ์ง์ ‘ ๋งŒ๋“ค์–ด๋”ฐ ใ…‹ใ…‹

 


 

๋”๋ณด๊ธฐ

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


์š”๊ตฌ์‚ฌํ•ญ ๊ฒ€์ฆ ๋ฐฉ๋ฒ•

  • ์š”๊ตฌ์‚ฌํ•ญ ๊ฒ€ํ†  Requirements Review
    ๋™๋ฃŒ๊ฒ€ํ† , ์›Œํฌ์Šค๋ฃจ(๋ฏธ๋ฆฌ๋ฐฐํฌํ•˜์—ฌ ๊ฒ€ํ† , ์งง์€ ํšŒ์˜), ์ธ์ŠคํŽ™์…˜(๋‹ค๋ฅธ ์ „๋ฌธ๊ฐ€๊ฐ€ ํ™•์ธ)
  • ํ”„๋กœํ† ํƒ€์ดํ•‘ Prototyping
    ๊ฒฌ๋ณธํ’ˆ ํ”„๋กœํ† ํƒ€์žŽ ์ œ์ž‘
  • ํ…Œ์ŠคํŠธ ์„ค๊ณ„
    ํ˜„์‹ค์ ์œผ๋กœ ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅํ•œ์ง€ ๊ฒ€ํ† 
  • CASE ๋„๊ตฌ ํ™œ์šฉ
    ์ผ๊ด€์„ฑ ๋ถ„์„ Consistency analysis ์œผ๋กœ ์š”๊ตฌ์‚ฌํ•ญ ๋ณ€๊ฒฝ์‚ฌํ•ญ ์ถ”์  

๋ฏธ๋“ค์›จ์–ด Middleware

์šด์˜์ฒด์ œ์™€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ๋“ฑ ์‚ฌ์ด์—์„œ ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค ์ œ๊ณต. 

  • DB
    ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค. ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ์ถ•ํ•˜๋ฉด ๋ณดํ†ต 2-Tier architecture๋ผ๊ณ ํ•จ. 
  • RPC ; Remote Procedure Call ์›๊ฒฉ ํ”„๋กœ์‹œ์ € ํ˜ธ์ถœ
    ์›๊ฒฉ ํ”„๋กœ์‹œ์ €๋ฅผ ๋งˆ์น˜ ๋กœ์ปฌ ํ”„๋กœ์‹œ์ €์ฒ˜๋Ÿผ ํ˜ธ์ถœํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด
  • MOM ; Message Oriented Middleware ๋ฉ”์‹œ์ง€ ์ง€ํ–ฅ ๋ฏธ๋“ค์›จ์–ด
    ๋ฉ”์‹œ์ง€ ๊ธฐ๋ฐ˜ ๋น„๋™๊ธฐ ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ. ์˜จ๋ผ์ธ X, ์ด๊ธฐ์ข… ๋ถ„์‚ฐ ๋ฐ์ดํ„ฐ ์‹œ์Šคํ…œ์˜ ๋ฐ์ดํ„ฐ ๋™๊ธฐ
  • TP-Monitor ; Transaction Processing Monitor ํŠธ๋žœ์žญ์…˜ ์ฒ˜๋ฆฌ ๋ชจ๋‹ˆํ„ฐ
    ์˜จ๋ผ์ธ ํŠธ๋žœ์žญ์…˜ ์—…๋ฌด์—์„œ ํŠธ๋žœ์žญ์…˜์„ ์ฒ˜๋ฆฌ ๋ฐ ๊ฐ์‹œํ•˜๋Š”. ๋น ๋ฅธ ์‘๋‹ต ์†๋„ ์œ ์ง€
  • ORB ; Object Request Broker ๊ฐ์ฒด ์š”์ฒญ ๋ธŒ๋กœ์ปค
    CORBA ํ‘œ์ค€ ์ŠคํŽ™์„ ๊ตฌํ˜„ํ•œ ๊ฐ์ฒด ์ง€ํ–ฅ ๋ฏธ๋“ค์›จ์–ด. + TP Monitor ์žฅ์ ์„ ์ถ”๊ฐ€ํ•œ ์ œํ’ˆ๋„ ์žˆ์Œ
  • WAS ; Web Application Server
    ๋™์  ์ปจํ…์ธ  ์ฒ˜๋ฆฌ. ์›น ํ™˜๊ฒฝ ๊ตฌํ˜„ ์œ„ํ•œ. HTTP ์„ธ์…˜ ์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ ์›น ์„œ๋ฒ„ ๊ธฐ๋Šฅ + ๋ฏธ์…˜-ํฌ๋ฆฌํ‹ฐ์ปฌ ๊ธฐ์—… ์—…๋ฌด 

EAI ; Enterprise Application Integration 

๊ธฐ์—… ๋‚ด ๊ฐ์ข… ์–ดํ”Œ ๊ฐ„ ์ƒํ˜ธ ์—ฐ๋™์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์†”๋ฃจ์…˜

์œ„์—์„œ ๋ถ€ํ„ฐ ์•„๋ž˜๋กœ (๊ท€์ฐฎ์•„์„œ ๊ธ์–ด์™”๋‹ค)

  • Point-to-Point 1:1. ๋ณ€๊ฒฝ ๋ฐ ์žฌ์‚ฌ์šฉ ์–ด๋ ต
  • Hub&Spoke ํ—ˆ๋ธŒ์ด์šฉ. ์ค‘์•™ ์ง‘์ค‘. ํ™•์žฅ ์šฉ์ด
  • Message Bus (ESB) ์•ฑ ์‚ฌ์ด์— ๋ฏธ๋“ค์›จ์–ด. ํ™•์žฅ์„ฑ. ๋Œ€์šฉ๋Ÿ‰ ์ฒ˜๋ฆฌ
  • Bus Hybrid Hub&Spoke(๊ทธ๋ฃน๋‚ด) + ESB(๊ทธ๋ฃน๊ฐ„). ๋ฐ์ดํ„ฐ ๋ณ‘๋ชฉ ์ตœ์†Œํ™” 

JSON

๋ฐ์ดํ„ฐ ๊ฐ์ฒด๋ฅผ ์†์„ฑ·๊ฐ’์˜ ์Œ(Attribute-Value Pairs) ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•˜๋Š” ๊ฐœ๋ฐฉํ˜• ํ‘œ์ค€ ํฌ๋งท 

๋น„๋™๊ธฐ ์ฒ˜๋ฆฌ์— ์‚ฌ์šฉ๋˜๋Š” AJAX์—์„œ XML์„ ๋Œ€์ฒดํ•˜์—ฌ ์‚ฌ์šฉ๋˜๊ณ  ์žˆ๋‹ค. 

AJAX 

ํด๋ผ์ด์–ธํŠธ ์„œ๋ฒ„ ๊ฐ„์— XML๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๋น„๋™๊ธฐ ํ†ต์‹  ๊ธฐ์ˆ 

์›นํŽ˜์ด์ง€ ์ผ๋ถ€ ์˜์—ญ๋งŒ์„ ์—…๋ฐ์ดํŠธ


์ธํ„ฐํŽ˜์ด์Šค ๋ณด์•ˆ ๊ธฐ๋Šฅ ์ ์šฉ

์ธํ„ฐํŽ˜์ด์Šค ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ๋ถ„์„ํ•œ ํ›„ ์ ์ ˆ ๋ณด์•ˆ ๊ธฐ๋Šฅ ์ ์šฉ

๋„คํŠธ์›Œํฌ ์˜์—ญ Sniffing ๋“ฑ ๋ฐ์ดํ„ฐ ํƒˆ์ทจ ๋ฐ ๋ณ€์กฐ ๋ง‰๊ธฐ์œ„ํ•ด ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์•”ํ˜ธํ™”. IPSec, SSL, S-HTTP ๋“ฑ 
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์˜์—ญ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ ์ƒ์˜ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ๋ณด์™„ํ•˜๋Š” ๋ฐฉํ–ฅ์œผ๋กœ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์˜์—ญ DB, ์Šคํ‚ค๋งˆ, ์—”ํ‹ฐํ‹ฐ์˜ ์ ‘๊ทผ ๊ถŒํ•œ๊ณผ ํ”„๋กœ์‹œ์ €, ํŠธ๋ฆฌ๊ฑฐ ๋“ฑ ๋ฐ๋ฒ  ๋™์ž‘ ๊ฐ์ฒด์˜ ๋ณด์•ˆ ์ทจ์•ฝ์ ์— ๋ณด์•ˆ
  • IPSec : ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์—์„œ IP ํŒจํ‚ท ๋‹จ์œ„์˜ ๋ฐ์ดํ„ฐ ๋ณ€์กฐ ๋ฐฉ์ง€ ๋ฐ ์€๋‹‰ ๊ธฐ๋Šฅ ์ œ๊ณต ํ”„๋กœํ† ์ฝœ
  • SSL : TCP/IP ๊ณ„์ธต๊ณผ ์•ฑ ๊ณ„์ธต ์‚ฌ์ด ์ธ์ฆ, ์•”ํ˜ธํ™”, ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅํ•˜๋Š” ํ”„๋กœํ† ์ฝœ
  • S-HTTP : ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๊ฐ„์— ์ „์†ก๋˜๋Š” ๋ชจ๋“  ๋ฉ”์‹œ์ง€ ์•”ํ˜ธํ™”ํ•˜๋Š” ํ”„๋กœํ† ์ฝœ

๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ ๋„๊ตฌ

์ธํ„ฐํŽ˜์ด์Šค ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ๋ถ„์„ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋„๊ตฌ

ํŒŒ์ผ ๋ณ€๊ฒฝ ์œ ๋ฌด ํ™•์ธ, ๊ด€๋ฆฌ์ž ์•ˆ๋‚ด 

Tripwire, AIDE, Samhain, Claymore, Slipwire, Fcheck ๋“ฑ..

์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„ ๊ฒ€์ฆ ๋„๊ตฌ

์ธํ„ฐํŽ˜์ด์Šค ๋‹จ์œ„ ๊ธฐ๋Šฅ๊ณผ ์‹œ๋‚˜๋ฆฌ์˜ค ๋“ฑ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ, ์ž๋™ํ™” ๋„๊ตฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Œ.

  • XUnit : ์ž๋™ํ™”๋œ ํ•ด๋ฒ• ์ œ๊ณตํ•˜๋Š” ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ํ”„๋ ˆ์ž„์›Œํฌ, Smalltalk ์ฒ˜์Œ ์ ์šฉ SUnit ๋“ฑ.. XUnit์œผ๋กœ ํ†ต์นญ
  • STAF : ์„œ๋น„์Šค ํ˜ธ์ถœ ๋ฐ ์ปดํฌ๋„ŒํŠธ ์žฌ์‚ฌ์šฉ ๋“ฑ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ ์ง€์›, ํ…Œ์ŠคํŠธ ํ”„๋ ˆ์ž„ ์›Œํฌ, ๋ถ„์‚ฐ ์†Œํ”„ํŠธ์›จ์–ด.
    ๊ฐ ๋ถ„์‚ฐ ํ™˜๊ฒฝ Daemon์ด ํ”„๋กœ๊ทธ๋žจ ํ…Œ์ŠคํŠธ ์‘๋‹ต ๋Œ€์‹ , ์™„๋ฃŒ๋˜๋ฉด ์•Œ์•„์„œ ์ž๋™ํ™”.
  • FitNesse : web ๊ธฐ๋ฐ˜ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค, ์„ค๊ณ„,.. ํ”„๋ ˆ์ž„์›Œํฌ
  • NTAF : FitNesse ํ˜‘์—… + STAF ์žฌ์‚ฌ์šฉ ๋ฐ ํ™•์žฅ์„ฑ ํ†ตํ•ฉ. ๋„ค์ด๋ฒ„์˜ ํ…Œ์ŠคํŠธ ์ž๋™ํ™” ํ”„๋ ˆ์ž„์›Œํฌ
  • Selenium : ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ…Œ์ŠคํŠธ ํ”„๋ ˆ์ž„์›Œํฌ
  • watir : ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐฉ์‹์˜ ๊ฐ์ฒด ์ง€ํ–ฅ ์–ธ๋” Ruby ์‚ฌ์šฉํ•˜๋Š” ์•ฑ ํ…Œ์ŠคํŠธ ํ”„๋ ˆ์ž„์›Œํฌ 

์ค‘์š” ํ‚ค์›Œ๋“œ ์ˆœ ์žฌ์ •๋ฆฌ 

EAI(๊ธฐ์—… ์†”๋ฃจ์…˜ ; point-to-point, Hub&Spoke, ESB, BusHybrid), AJAX (XML์ฃผ๊ณ ๋ฐ›๋Š” ๋น„๋™๊ธฐ ํ†ต์‹ )
JSON(XML๋Œ€์ฒด ์‚ฌ์šฉ), Interface ๋ณด์•ˆ ๊ธฐ๋Šฅ (๋„คํŠธ์›Œํฌ - IPSec, SSL, S-HTTP), ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌํ˜„ ๊ฒ€์ฆ๋„๊ตฌ (XUnit...)

 

๋ฐ˜์‘ํ˜•

์ตœ๊ทผ๋Œ“๊ธ€

์ตœ๊ทผ๊ธ€

skin by ยฉ 2024 ttutta