216.73.216.168 TODAY : 4,269

PHP ์˜จ๋ผ์ธ ๊ฐ•์˜

 > 

PHP - ๊ณ ๊ธ‰

๐Ÿ“š PHP ๊ณ ๊ธ‰ - 6์ฃผ์ฐจ: ์บ์‹ฑ (Caching) ์ „๋žต - 01 ์บ์‹ฑ์˜ ์ค‘์š”์„ฑ๊ณผ ์ข…๋ฅ˜ (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์บ์‹ฑ, HTTP ์บ์‹ฑ, OPcache)

๐Ÿ“š PHP ๊ณ ๊ธ‰ - 6์ฃผ์ฐจ: ์บ์‹ฑ (Caching) ์ „๋žต - 01 ์บ์‹ฑ์˜ ์ค‘์š”์„ฑ๊ณผ ์ข…๋ฅ˜ (๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์บ์‹ฑ, HTTP ์บ์‹ฑ, OPcache)
ํ‰์  10.0 ๋ผ์ด์„ผ์Šค free
์‚ฌ์šฉ์žํ‰์  10.0 ์šด์˜์ฒด์ œ
๋‹ค์šด๋กœ๋“œ 1 ํŒŒ์ผํฌ๊ธฐ 0
์ œ์ž‘์‚ฌ LUZENSOFT ๋“ฑ๋ก์ผ 2025-09-14 16:16:58
์กฐํšŒ์ˆ˜ 1
- ์„ค๋ช…

์บ์‹ฑ(Caching)์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€?


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



์บ์‹ฑ์˜ ์ข…๋ฅ˜์™€ ์›๋ฆฌ


์›น ๊ฐœ๋ฐœ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์บ์‹ฑ ์ „๋žต์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ ์ ์šฉ๋˜๋Š” ๊ณ„์ธต์ด ๋‹ค๋ฅด๋‹ค.



1. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์บ์‹ฑ

uploadImage


#๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์บ์‹ฑ ์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ์บ์‹ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ๋™์ผํ•œ ์ฟผ๋ฆฌ๊ฐ€ ์—ฌ๋Ÿฌ ๋ฒˆ ์‹คํ–‰๋  ๋•Œ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์— ์ง์ ‘ ์ ‘๊ทผํ•˜์ง€ ์•Š๊ณ  ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„์˜ ๋ถ€๋‹ด์„ ์ค„์—ฌ์ค€๋‹ค. ๋Œ€ํ‘œ์ ์œผ๋กœ #Redis ๋‚˜ #Memcached ๊ฐ™์€ #์ธ๋ฉ”๋ชจ๋ฆฌ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ์ž์ฃผ ์กฐํšŒ๋˜๋Š” ์ธ๊ธฐ ์ƒํ’ˆ ๋ชฉ๋ก์ด๋‚˜ ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ์ •๋ณด ๋“ฑ์„ ์บ์‹ฑํ•˜์—ฌ, ๋งค๋ฒˆ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ฟผ๋ฆฌํ•˜๋Š” ๋Œ€์‹  ์บ์‹œ์—์„œ ๋น ๋ฅด๊ฒŒ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.



2. HTTP ์บ์‹ฑ

uploadImage

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

์ฃผ์š” HTTP ์บ์‹œ ํ—ค๋”:

  • Cache-Control: ์บ์‹ฑ ๋™์ž‘์„ ์ œ์–ดํ•˜๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ํ—ค๋”์ด๋‹ค.

  • ETag: ๋ฆฌ์†Œ์Šค์˜ ๊ณ ์œ ํ•œ ๋ฒ„์ „ ์‹๋ณ„์ž์ด๋‹ค.

  • Last-Modified: ๋ฆฌ์†Œ์Šค๊ฐ€ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ˆ˜์ •๋œ ์‹œ๊ฐ„์ด๋‹ค.

์ด๋Ÿฌํ•œ ํ—ค๋”๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„์— If-None-Match ๋˜๋Š” If-Modified-Since ํ—ค๋”์™€ ํ•จ๊ป˜ ์š”์ฒญ์„ ๋ณด๋‚ด ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ณ€๊ฒฝ๋˜์—ˆ๋Š”์ง€ ํ™•์ธ๋งŒ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ณ€๊ฒฝ์ด ์—†๋‹ค๋ฉด ์„œ๋ฒ„๋Š” 304 Not Modified ์‘๋‹ต์„ ๋ณด๋‚ด๊ณ , ํด๋ผ์ด์–ธํŠธ๋Š” ์บ์‹œ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.



3. PHP OPcache


#OPcache ๋Š” PHP ์ฝ”๋“œ ์ž์ฒด๋ฅผ ์บ์‹ฑํ•˜๋Š” ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ•์ด๋‹ค. PHP ์Šคํฌ๋ฆฝํŠธ๋Š” ๋งค๋ฒˆ ์‹คํ–‰๋  ๋•Œ๋งˆ๋‹ค ํŒŒ์‹ฑ(parsing)๋˜๊ณ  ์ปดํŒŒ์ผ(compiling)๋˜์–ด์•ผ ํ•œ๋‹ค. OPcache๋Š” ์ด ๊ณผ์ •์„ ํ•œ ๋ฒˆ๋งŒ ์ˆ˜ํ–‰ํ•œ ํ›„, ์ปดํŒŒ์ผ๋œ #๋ฐ”์ดํŠธ์ฝ”๋“œ ๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•ด ๋‘”๋‹ค. ๋‹ค์Œ ์š”์ฒญ์—์„œ๋Š” ํŒŒ์‹ฑ๊ณผ ์ปดํŒŒ์ผ ๊ณผ์ •์„ ์ƒ๋žตํ•˜๊ณ  ๋ฐ”๋กœ ์ปดํŒŒ์ผ๋œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์„ฑ๋Šฅ์„ ๊ทน๋Œ€ํ™”ํ•œ๋‹ค.

PHP 5.5 ์ด์ƒ ๋ฒ„์ „์—๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๋ณ„๋„์˜ ์„ค์ • ์—†์ด ํ™œ์„ฑํ™”ํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ PHP ์›น ์„œ๋น„์Šค์—์„œ ํ•„์ˆ˜์ ์œผ๋กœ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋‹ค.



์š”์•ฝ


#์บ์‹ฑ ์€ ์›น ์„œ๋น„์Šค์˜ ์„ฑ๋Šฅ์„ ์ตœ์ ํ™”ํ•˜๊ธฐ ์œ„ํ•œ ํ•ต์‹ฌ ์ „๋žต์ด๋‹ค. #๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์บ์‹ฑ , #HTTP์บ์‹ฑ , #OPcache ์™€ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ์บ์‹ฑ์„ ์ ์ ˆํžˆ ์กฐํ•ฉํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉด, ์„œ๋ฒ„์˜ ๋ถ€ํ•˜๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ค„์ด๊ณ  ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋น ๋ฅธ ์‘๋‹ต์„ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์Œ ์‹œ๊ฐ„์—๋Š” ๊ฐ๊ฐ์˜ ์บ์‹ฑ ์ „๋žต์„ PHP์—์„œ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•˜๋Š”์ง€ ๊ตฌ์ฒด์ ์œผ๋กœ ๋‹ค๋ฃจ๊ฒ ๋‹ค.


์บ์‹ฑ ์„ฑ๋Šฅ ์„œ๋ฒ„๋ถ€ํ•˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์บ์‹ฑ Redis Memcached ์ธ๋ฉ”๋ชจ๋ฆฌ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค HTTP์บ์‹ฑ ํด๋ผ์ด์–ธํŠธ ์บ์‹œ ๋ฐ”์ดํŠธ์ฝ”๋“œ OPcache ETag LastModified CacheControl



๊ฒŒ์ž„, ๋งˆ์ผ€ํŒ…, ์„œ๋ฒ„์šฉ ๊ณ ์ •IP, ๋ฐฉํ™”๋ฒฝ์šฐํšŒ, ๊นจ๋—ํ•˜๊ณ  ์ค‘๋ณต์—†๋Š” IP ์ œ๊ณต.

https://xn--299ao67b9qbmsf04c.net/