๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๊ฐœ์ธ ๊ณต๋ถ€/Architecture

ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋ชจ๋ธ & ์›น์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋ธ

by syLim___ 2024. 1. 3.
728x90

โœ… ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋ชจ๋ธ

 

 

 - ํด๋ผ์ด์–ธํŠธ ํ”„๋กœ๊ทธ๋žจ์ด ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋žจ์— ์š”์ฒญ์„ ์ „์†กํ•˜๋ฉด,

    ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋žจ์ด ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜์—ฌ ์‘๋‹ตํ•˜๋Š” ๋ชจ๋ธ

 

 - 2-tier architecture๋ผ๊ณ ๋„ ๋ถ€๋ฅธ๋‹ค.

 

๐Ÿฅ2-tier architecture

 - ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ง์ ‘ ์„œ๋ฒ„์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘์†ํ•˜์—ฌ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•œ๋‹ค.
 - ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์„œ๋ฒ„๊ฐ€ ๋”ฐ๋กœ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์ง€ ์•Š๊ณ , ์„œ๋ฒ„๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
    ๋”ฐ๋ผ์„œ ๋ณด์•ˆ์— ์ทจ์•ฝํ•˜๊ณ , ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ํž˜๋“ค๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

 

 

 - ํด๋ผ์ด์–ธํŠธ

    - ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž ํ˜น์€ ์‚ฌ์šฉ์ž์˜ ๋‹จ๋ง๊ธฐ

    - ์‚ฌ์šฉ์ž๋Š” ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์ „์— ํด๋ผ์ด์–ธํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜ํ•ด์•ผ ํ•œ๋‹ค.

- ์„œ๋ฒ„

    - ๋‹ค์ˆ˜์˜ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ปดํ“จํ„ฐ

    - ๊ณต์œ  ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐ ์ฒ˜๋ฆฌ, ์›นํŽ˜์ด์ง€ ์ง€์›, ๋„คํŠธ์›Œํฌ ๊ด€๋ฆฌ ๋“ฑ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

 

 - ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋ชจ๋ธ์˜ ๋ฌธ์ œ์ 

    - ๊ฐ ์‘์šฉ์†Œํ”„ํŠธ์›จ์–ด๋“ค์€ ์ €๋งŒ์˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ์‚ฌ์šฉ์ž pc๋งˆ๋‹ค ๋”ฐ๋กœ ์„ค์น˜๋˜์–ด์•ผํ•œ๋‹ค.

    - ๋”ฐ๋ผ์„œ ์„œ๋ฒ„ ํ™˜๊ฒฝ์ด ๋ฐ”๋€Œ๋ฉด, ํด๋ผ์ด์–ธํŠธ ์‘์šฉํ”„๋กœ๊ทธ๋žจ๋„ ์—…๋ฐ์ดํŠธํ•ด์•ผ ํ•œ๋‹ค. (ํ•œ ์ชฝ์—์„œ ๋ฐ”๋€Œ๋ฉด, ๋‹ค๋ฅธ ์ชฝ์—์„œ๋„ ๋™๊ธฐํ™”ํ•ด์ฃผ์–ด์•ผํ•จ)

    - ๋˜ํ•œ, ์›น์„œ๋ฒ„์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์ง€ ์•Š์•„ ํด๋ผ์ด์–ธํŠธ ๋ˆ„๊ตฌ๋‚˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ, ๋ณด์•ˆ์ƒ์œผ๋กœ๋„ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.

 

     --> ์ด๋ฅผ ๋ณด์™„ํ•˜๋Š” ๋ชจ๋ธ์ด ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋ธ์ด๋‹ค.

 

โœ… ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋ธ

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

๐Ÿฅ ์ฐธ๊ณ 
 - ์ •์ ์ธ ์›น ์ปจํ…์ธ 
    - ์›น ์„œ๋ฒ„์— ๋ฏธ๋ฆฌ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ์ปจํ…์ธ 
    - ๋ชจ๋“  ์‚ฌ์šฉ์ž์—๊ฒŒ ๋™์ผํ•œ ๋‚ด์šฉ์ด ํ‘œ์‹œ๋จ
 - ๋™์ ์ธ ์›น ์ปจํ…์ธ 
    - ์‚ฌ์šฉ์ž์˜ ์š”์ฒญ์ด๋‚˜ ํŠน์ •ํ•œ ์š”์ธ(๋ฐฉ๋ฌธ์‹œ๊ฐ„, ์œ„์น˜, ๋””๋ฐ”์ด์Šค ๋“ฑ)์— ๋”ฐ๋ผ์„œ ๋ณ€๊ฒฝ๋˜๋Š” ์ปจํ…์ธ 
    - ๋ชจ๋“  ์‚ฌ์šฉ์ž์—๊ฒŒ ๋™์ผํ•˜๊ฒŒ ํ‘œ์‹œ๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž์™€์˜ ์ƒํ˜ธ์ž‘์šฉ์— ๋”ฐ๋ผ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ์Œ
 - ์›น์‚ฌ์ดํŠธ vs ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜?
    - ์ผ๋ฐ˜์ ์œผ๋กœ ์›น์‚ฌ์ดํŠธ๋Š” ์ •์  ํŽ˜์ด์ง€๋“ค์˜ ์ง‘ํ•ฉ์ฒด
    - ๋™์ ํŽ˜์ด์ง€๋ฅผ ํฌํ•จํ•˜๊ฒŒ ๋˜๋ฉด ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

 

 - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์„ฑ ์š”์†Œ, ๋ฏธ๋“ค์›จ์–ด ์‹œ์Šคํ…œ, ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ๊ตฌ์กฐํ™”ํ•œ ๋ชจ๋ธ

 - ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„ ๋ชจ๋ธ๊ณผ ๋‹ฌ๋ฆฌ,

    ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋ธ์˜ ํด๋ผ์ด์–ธํŠธ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๊ณ , ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด์„œ๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค.

    ์„œ๋ฒ„์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋ถ„๋ฆฌ์‹œํ‚จ 3-tier(๋˜๋Š” multi-tier) ๋ชจ๋ธ์ด๊ธฐ ๋•Œ๋ฌธ

3-tier ๋ชจ๋ธ

 - ์›น ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ง€์›ํ•˜๋Š” HTML/XHTML๊ณผ ๊ฐ™์€ ํ‘œ์ค€ ํ˜•์‹์˜ ์›น ๋ฌธ์„œ ์กฐํ•ฉ์„ ๋™์ ์œผ๋กœ ๋งŒ๋“ค์–ด๋‚ธ๋‹ค.

 

 - 3-tier ๋ชจ๋ธ ๊ตฌ์„ฑ ์š”์†Œ : ์›น ์„œ๋ฒ„, ์›น ๋ธŒ๋ผ์šฐ์ €, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„

 

๐Ÿฅ ์›น ์„œ๋ฒ„

    - ํ•ต์‹ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ณ„์ธต์ด๋‹ค.

    - HTTP ๋˜๋Š” HTTPS๋ฅผ ํ†ตํ•ด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญํ•˜๋Š” HTML ๋ฌธ์„œ๋‚˜ ์˜ค๋ธŒ์ ํŠธ๋ฅผ ์ „์†กํ•ด์ค€๋‹ค.

    - ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ํ•ต์‹ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ฒ˜๋ฆฌํ•œ๋‹ค.

    - ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•œ๋‹ค.

    - ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€๋Š” API ํ˜ธ์ถœ์„ ํ†ตํ•ด ํ†ต์‹ ํ•œ๋‹ค.

    - ์˜ˆ์‹œ: Apache, Nginx ๋“ฑ

 

๐Ÿฅ์›น ๋ธŒ๋ผ์šฐ์ €

    - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

    - ๋™์ ์ธ ์ปจํ…์ธ ๋Š” ์ฃผ๋กœ html, ์ •์ ์ธ ์ปจํ…์ธ ๋Š” ์ฃผ๋กœ javascript ๋“ฑ์œผ๋กœ ์ž‘์„ฑ๋œ๋‹ค.

    - ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ž…๋ ฅ์„ ๋ฐ›๊ฑฐ๋‚˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•ด์ค€๋‹ค.

 

๐Ÿฅ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„

    - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ฒ˜๋ฆฌํ•˜๋Š” ์ •๋ณด๊ฐ€ ์ €์žฅ๋˜๊ณ  ๊ด€๋ฆฌ๋œ๋‹ค.

    - mysql, mariadb, oracle, mssql ๋“ฑ

 

 - ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชจ๋ธ ๋ฌธ์ œ์ 

    - ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ ‘์†ํ•  ๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด ํ”„๋กœ์„ธ์Šค๊ฐ€ ํ• ๋‹น๋˜๋ฏ€๋กœ, ์‚ฌ์šฉ์ž๊ฐ€ ๋งŽ์•„์ง€๋ฉด ์›น์„œ๋ฒ„์— ๊ณผ๋ถ€ํ•˜๊ฐ€ ์ƒ๊ธด๋‹ค.

    --> ๋ณด์™„์„ ์œ„ํ•ด WAS๋ผ๋Š” ๊ฐœ๋…์ด ๋“ฑ์žฅํ–ˆ์Œ

 

โœ… References

https://ko.wikipedia.org/wiki/%ED%81%B4%EB%9D%BC%EC%9D%B4%EC%96%B8%ED%8A%B8_%EC%84%9C%EB%B2%84_%EB%AA%A8%EB%8D%B8

https://www.ibm.com/kr-ko/topics/three-tier-architecture

728x90

'๊ฐœ์ธ ๊ณต๋ถ€ > Architecture' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

JSP ๋ชจ๋ธ 1, 2์™€ MVC ํŒจํ„ด  (1) 2025.01.19
Facade  (0) 2023.09.16