WS์™€ WAS

๊ถŒํƒœํ˜•ยท2023๋…„ 4์›” 3์ผ
0

์ง€์‹์ •๋ฆฌ

๋ชฉ๋ก ๋ณด๊ธฐ
51/72
post-thumbnail
post-custom-banner

๐Ÿ˜€์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ์›น์„œ๋ฒ„(WS)์™€ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(WAS)๋ฅผ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž.

์›น์„œ๋ฒ„(WS)

์œ„ํ‚ค ๋ฐฑ๊ณผ์˜ ์›น์„œ๋ฒ„ ์ •์˜์— ๋”ฐ๋ฅด๋ฉด

์›น ์„œ๋ฒ„(Web server)๋Š” HTTP ๋˜๋Š” HTTPS๋ฅผ ํ†ตํ•ด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญํ•˜๋Š” HTML ๋ฌธ์„œ๋‚˜ ์˜ค๋ธŒ์ ํŠธ(์ด๋ฏธ์ง€ ํŒŒ์ผ ๋“ฑ)์„ ์ „์†กํ•ด์ฃผ๋Š” ์„œ๋น„์Šค ํ”„๋กœ๊ทธ๋žจ์„ ๋งํ•œ๋‹ค. ์›น ์„œ๋ฒ„ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ตฌ๋™ํ•˜๋Š” ํ•˜๋“œ์›จ์–ด๋„ ์›น ์„œ๋ฒ„๋ผ๊ณ  ํ•ด์„œ ํ˜ผ๋™ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๊ฐ„ํ˜น ์žˆ๋‹ค.

WS๋Š” ํด๋ผ์ด์–ธํŠธ(์‚ฌ์šฉ์ž)๊ฐ€ ๋ธŒ๋ผ์šฐ์ € ์ฃผ์†Œ์ฐฝ์— url์„ ์ž…๋ ฅํ•˜์—ฌ ์–ด๋–ค ํŽ˜์ด์ง€๋ฅผ ์š”์ฒญํ•˜๋ฉด, http ์š”์ฒญ์„ ๋ฐ›์•„๋“ค์—ฌ HTML ๋ฌธ์„œ์™€ ๊ฐ™์€ ์ •์ ์ธ ์ฝ˜ํ…์ธ ๋ฅผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „๋‹ฌํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

  • ์›น ์„œ๋ฒ„์˜ ์ž„๋ฌด๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ
  1. ๋‹จ์ˆœํžˆ ์ €์žฅ๋œ ์›น ๋ฆฌ์†Œ์Šค๋“ค์„ ํด๋ผ์ด์–ธํŠธ๋กœ ์ „๋‹ฌํ•˜๊ณ , ํด๋ผ์ด์–ธํŠธ๋กœ๋ถ€ํ„ฐ ์ฝ˜ํ…์ธ ๋ฅผ ์ „๋‹ฌ๋ฐ›์•„ ์ €์žฅํ•˜๊ฑฐ๋‚˜ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ฃผ๋กœ ์ด๋ฏธ์ง€, CSS, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํฌํ•จํ•œ HTML ๋ฌธ์„œ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค.

  2. ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋™์ ์ธ ์š”์ฒญ์ด ๋“ค์–ด์™”์„ ๋•Œ, ํ•ด๋‹น ์š”์ฒญ์„ ์›น ์„œ๋ฒ„ ์ž์ฒด์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์— WAS์—๊ฒŒ ์š”์ฒญํ•œ๋‹ค.

๋Œ€ํ‘œ์ ์ธ ์›น ์„œ๋ฒ„์˜ ์ข…๋ฅ˜: Apache, Nginx, IIS(windows ์ „์šฉ ์›น ์„œ๋ฒ„)


์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(WAS)

WAS๋˜ํ•œ WS์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค. WAS๋Š” ์ฃผ๋กœ ๋™์ ์ธ ์ปจํ…์ธ ๋ฅผ ๊ด€๋ฆฌํ•˜์ง€๋งŒ, WS์ฒ˜๋Ÿผ ์ •์ ์ธ ์ฝ˜ํ…์ธ ๋ฅผ ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ ๋˜ํ•œ ์ œ๊ณตํ•œ๋‹ค.

WAS(Web Application Server)๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ๋Œ€ํ•ด ๋™์ ์œผ๋กœ ์›น ํŽ˜์ด์ง€๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ์—ฐ๋™ ๋“ฑ์˜ ์—…๋ฌด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์„œ๋ฒ„์ด๋‹ค.

ํ•œ๊ตญ์—์„œ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ "WAS" ๋˜๋Š” "WAS S/W"๋กœ ํ†ต์นญํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๊ณต๊ณต๊ธฐ๊ด€์—์„œ๋Š” "์›น ์‘์šฉ ์„œ๋ฒ„"๋กœ ์‚ฌ์šฉ๋˜๊ณ , ์˜์–ด๊ถŒ์—์„œ๋Š” "Application Server" (์•ฝ์ž AS)๋กœ ๋ถˆ๋ฆฐ๋‹ค.

  • ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„์˜ ์ž„๋ฌด๋Š” ๋Œ€ํ‘œ์ ์œผ๋กœ
  1. ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ํ™˜๊ฒฝ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ ‘์† ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.

  2. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํŠธ๋žœ์žญ์…˜์„ ๊ด€๋ฆฌํ•œ๋‹ค.

  3. ์—…๋ฌด๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.

๋Œ€ํ‘œ์ ์ธ WAS์˜ ์ข…๋ฅ˜ : Tomcat, JBoss, Jeus, Web Sphere

WAS์˜ ๋™์  ์ปจํ…์ธ  ์ „๋‹ฌ ๊ณผ์ •

  1. ์›น์„œ๋ฒ„๋กœ ๋ถ€ํ„ฐ ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด ์ œ์ผ๋จผ์ € ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ด๋ฅผ ์•Œ๋งž๊ฒŒ ์ฒ˜๋ฆฌํ•œ๋‹ค.

  2. ์ปจํ…Œ์ด๋„ˆ๋Š” ๋ฐฐํฌ์„œ์ˆ ์ž(web.xml) ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ ํ•ด๋‹น ์„œ๋ธ”๋ฆฟ์— ๋Œ€ํ•œ ์Šค๋ ˆ๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์š”์ฒญ(httpServletRequest) ๋ฐ ์‘๋‹ต(httpServletResponse) ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ „๋‹ฌํ•œ๋‹ค.

  3. ๋‹ค์Œ์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋Š” ์„œ๋ธ”๋ฆฟ์„ ํ˜ธ์ถœํ•œ๋‹ค.

  4. ํ˜ธ์ถœ๋œ ์„œ๋ธ”๋ฆฟ์˜ ์ž‘์—…์„ ๋‹ด๋‹นํ•˜๊ฒŒ ๋œ ์Šค๋ ˆ๋“œ(๋ฏธ๋ฆฌ ์ƒ์„ฑ๋œ ์Šค๋ ˆ๋“œ)๋Š” ์š”์ฒญ์— ๋”ฐ๋ผ doPost() ๋˜๋Š” doGet()์„ ํ˜ธ์ถœํ•œ๋‹ค.

  5. ํ˜ธ์ถœ๋œ doPost() ๋˜๋Š”doGet()๋ฉ”์†Œ๋“œ๋Š” ์ƒ์„ฑ๋œ ๋™์ ํŽ˜์ด์ง€๋ฅผ Response๊ฐ์ฒด์— ์‹ค์–ด์„œ ์ปจํ…Œ์ด๋„ˆ์— ์ „๋‹ฌํ•œ๋‹ค.

  6. ์ปจํ…Œ์ด๋„ˆ๋Š” ์ „๋‹ฌ๋ฐ›์€ Response ๊ฐ์ฒด๋ฅผ HTTPResponseํ˜•ํƒœ๋กœ ์ „ํ™˜ํ•˜์—ฌ ์›น์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๊ณ  ์ƒ์„ฑ๋˜์—ˆ๋˜ ์Šค๋ ˆ๋“œ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  ์š”์ฒญ(httpServletReqeust)๋ฐ ์‘๋‹ต(httpSerletResponse)๊ฐ์ฒด๋ฅผ ์†Œ๋ฉธ์‹œํ‚จ๋‹ค.


์™œ WS + WAS๋กœ ์‚ฌ์šฉํ• ๊นŒ?

๐Ÿ™„โ“์œ„์˜ WS ์™€ WAS์˜ ์„ค๋ช…๋Œ€๋กœ๋ผ๋ฉด, ์ •์ ์ธ ์ปจํ…์ธ ๋งŒ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋„, ์ •์  โ€ข ๋™์ ์ธ ์ปจํ…์ธ ๊ฐ€ ๋ชจ๋‘ ์žˆ๋Š” ํ”„๋กœ์ ํŠธ๋„ WAS๋งŒ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ. ์™œ ๊ด€๋ฆฌํ•˜๊ธฐ ๋ถˆํŽธํ•˜๊ฒŒ ๋‘ ๊ฐ€์ง€๋ฅผ ๋ชจ๋‘ ์‚ฌ์šฉํ•ด์„œ ๋งŒ๋“œ๋Š” ๊ฑธ๊นŒ?

๋ชจ๋‘ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค.

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

  • โ“๋กœ๋“œ๋ฒจ๋Ÿฐ์‹ฑ ์ด๋ž€?
    ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ์€ ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ์—ฌ๋Ÿฌ ๋Œ€์˜ ์„œ๋ฒ„์— ๋ถ„์‚ฐ์‹œ์ผœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ

  1. ์—ญํ•  ๋ถ„๋ฆฌ๋ฅผ ํ†ตํ•œ ์œ ์ง€๋ณด์ˆ˜์™€ ํ™•์žฅ์„ฑ ์ฆ๊ฐ€
    WAS์™€ WS๋ฅผ ๋ถ„๋ฆฌํ•˜๋ฉด ๊ฐ๊ฐ์˜ ์—ญํ• ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์›น ์„œ๋ฒ„๋Š” ์ •์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ณ , ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„๋Š” ๋™์ ์ธ ์ปจํ…์ธ ๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ์—ญํ• ์„ ๋ถ„๋ฆฌํ•˜๋ฉด ์œ ์ง€๋ณด์ˆ˜์™€ ํ™•์žฅ์ด ๋ณด๋‹ค ์‰ฌ์›Œ์ง„๋‹ค.

  2. ๋ณด์•ˆ์„ฑ์˜ ๊ฐ•ํ™”
    ํด๋ผ์ด์–ธํŠธ์™€ ์—ฐ๊ฒฐํ•˜๋Š” ํฌํŠธ๊ฐ€ ์ง์ ‘ WAS์— ์—ฐ๊ฒฐ์ด ๋˜์–ด ์žˆ๋‹ค๋ฉด ์ค‘์š”ํ•œ ์„ค์ • ํŒŒ์ผ๋“ค์ด ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— WAS ์„ค์ • ํŒŒ์ผ์„ ์™ธ๋ถ€์— ๋…ธ์ถœ์‹œํ‚ค์ง€ ์•Š๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด์„œ WS๋ฅผ ์•ž๋‹จ์— ๋ฐฐ์น˜์‹œํ‚จ๋‹ค.
    WS์™€ WAS์— ์ ‘๊ทผํ•˜๋Š” ํฌํŠธ๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— WS๊ฐ€ ํ•ดํ‚น์— ์˜ํ•ด ๋ฌด๋ ฅํ™”๋˜๋”๋ผ๋„, WAS์ธก ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋‹ค.


WS vs WAS

๐Ÿ˜€์œ„์—์„œ ํ’€์–ด์„œ ์„ค๋ช…ํ•œ ๋‚ด์šฉ์„ ๊ฐ„๋‹จํ•œ ํ‘œ๋กœ ํ•œ ๋ˆˆ์— ์ƒˆ๊ฒจ๋ณด์ž

๊ธฐ๋Šฅ/ํŠน์ง•์›น ์„œ๋ฒ„(WS)์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„(WAS)
์ •์  ์›น ํŽ˜์ด์ง€ ์ œ๊ณตใ€€ใ€€โญ•ใ€€ใ€€ใ€€ใ€€ใ€€โญ•
๋™์  ์›น ํŽ˜์ด์ง€ ์ œ๊ณตใ€€ใ€€โŒใ€€ใ€€ใ€€ใ€€ใ€€โญ•
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™ใ€€ใ€€โŒใ€€ใ€€ใ€€ใ€€ใ€€โญ•
ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌใ€€ใ€€โŒใ€€ใ€€ใ€€ใ€€ใ€€โญ•
๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์ง€์›ใ€€ใ€€โญ•ใ€€ใ€€ใ€€ใ€€ใ€€โญ•
ํ™•์žฅ์„ฑใ€€ใ€€๋ณดํ†ตใ€€ใ€€ใ€€ใ€€ใ€€๋†’์Œ

์ฐธ๊ณ ์ž๋ฃŒ(์ถœ์ฒ˜)
์œ„ํ‚ค๋ฐฑ๊ณผ ๊ฒ€์ƒ‰๊ฒฐ๊ณผ [์›น ์„œ๋ฒ„, ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„]
ํ‹ฐ์Šคํ† ๋ฆฌ ๊ฐœ๋ฐœ์™•,๋„๋˜ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… Apache์™€ Tomcat ํ˜น์€ ์›น ์„œ๋ฒ„์™€ WAS๋Š” ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅผ๊นŒ?
pxd ๊ฐ•์˜๋ฏผ ํฌ์ŠคํŒ… ์›น์„œ๋ฒ„์™€ WAS(Web Application Server)
๋„ค์ด๋ฒ„ ๋ฆผ๋ฏธ๋ฆผ๋ฏธ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… ์›น์„œ๋ฒ„(WS)์™€ ์›น์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„œ๋ฒ„(WAS)์˜ ์ฐจ์ด
ํ‹ฐ์Šคํ† ๋ฆฌ richet์˜ ํ…Œํฌ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ… [Web] Web Server๋ž€? Application Server๋ž€? (๊ฐœ๋… ์ •๋ฆฌ)

profile
22๋…„ 12์›” ๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•œ ์‹ ์ž… ๊ฐœ๋ฐœ์ž โ€˜๊ถŒํƒœํ˜•โ€™์ž…๋‹ˆ๋‹ค. ํฌ์ŠคํŒ… ํ•˜๋‚˜ํ•˜๋‚˜ ๋‚ด๊ฐ€ ๋‹ค์‹œ๋ณด๊ธฐ ์œ„ํ•ด ์“ฐ๋Š” ๊ฒƒ์ด์ง€๋งŒ, ๋‹ค๋ฅธ ๋ถ„๋“ค์—๊ฒŒ๋„ ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค. ๐Ÿ’ฏ์ปฌ๋ŸฌํฐํŠธ๊ฐ€ ์ž˜ ์•ˆ๋ณด์ด์‹ค ๊ฒฝ์šฐ ๐ŸŒ™๋‹คํฌ๋ชจ๋“œ๋ฅผ ์ด์šฉํ•ด์ฃผ์„ธ์š”.๐Ÿ˜€ ์ง€์ ๊ณผ ์ฐธ๊ฒฌ์€ ์–ธ์ œ๋‚˜ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ๋งŽ์€ ๋Œ“๊ธ€ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
post-custom-banner

0๊ฐœ์˜ ๋Œ“๊ธ€