°ÅÀÇ º¯ÇÏÁö ¾Ê°í ÀÚÁÖ ¿äûµÇ´Â ÆÄÀÏÀ» ij½¬¿¡ ÀúÀåÇÏ¿©
¼¹ö ºÎÇϸ¦ ÁÙÀÏ ¼ö ÀÖ´Ù. mmap()
ÇÒÁö ÆÄÀÏÀ» ¹Ì¸® ¿°í
ÆÄÀÏ Çڵ鷯¸¦ ÀúÀåÇÒÁö °áÁ¤ÇÑ´Ù. µÎ ¹æ½Ä ¸ðµÎ
ÆÄÀÏÀ» ¼ºñ½ºÇϱâÀ§ÇÑ ÀÛ¾÷ÀÇ ÀϺθ¦ ((ƯÈ÷ ÆÄÀÏ ÀÔÃâ·Â) ÆÄÀÏ ¿äû¶§¸¶´Ù
ÇÏ´Â ´ë½Å ¼¹ö°¡ ½ÃÀÛÇÒ¶§ ÇÏ¿© ¼¹ö ºÎÇϸ¦ °¨¼ÒÇÑ´Ù.
ÁÖÀÇ: ÀÌ ¹æ¹ýÀº CGI ÇÁ·Î±×·¥À̳ª Ưº°ÇÑ ³»¿ëÇڵ鷯¸¦ ÅëÇØ ¼ºñ½ºÇÏ´Â ÆÄÀÏÀÇ ¼Óµµ¸¦ Çâ»óÇÒ ¼ö ¾ø´Ù. ÀÌ ¹æ¹ýÀº º¸Åë ¾ÆÆÄÄ¡ core ³»¿ëÇڵ鷯°¡ ¼ºñ½ºÇÏ´Â ÀϹÝÆÄÀÏ¿¡¸¸ Àû¿ëµÈ´Ù.
ÀÌ ¸ðµâÀº ¾ÆÆÄÄ¡ 1.3ÀÇ mod_mmap_static
¸ðµâÀÇ
¿µÇâÀ» ¸¹ÀÌ ¹ÞÀº È®ÀåÀÌ´Ù.
¸ðµç Ç÷¡ÆûÀÌ µÎ Áö½Ã¾î¸¦ ¸ðµÎ Áö¿øÇÏ´Â °ÍÀº ¾Æ´Ï´Ù.
¿¹¸¦ µé¾î, À©µµ¿ìÁî¿ë ¾ÆÆÄÄ¡´Â ÇöÀç
mmap()
½Ã½ºÅÛÈ£ÃâÀ» »ç¿ëÇÏ¿©
¸Þ¸ð¸®¿¡ ´ëÀÀÇÑ´Ù. ¸¹Àº ÃÖ±Ù À¯´Ð½º·ù ¿î¿µÃ¼Á¦¿¡ ÀÌ ½Ã½ºÅÛÈ£ÃâÀÌ
ÀÖÁö¸¸, ¾ø´Â ¿î¿µÃ¼Á¦µµ ÀÖ´Ù. ¶Ç, mmap()
ÇÒ ¼ö ÀÖ´Â
ÆÄÀÏ Å©±â¿Í °³¼ö¸¦ ½Ã½ºÅÛÀÌ Á¦ÇÑÇÒ ¼ö ÀÖÀ¸¹Ç·Î ½ÇÇèÇغ¸´Â °ÍÀÌ
ÁÁ´Ù.
¼¹ö°¡ ½ÃÀÛÇÒ¶§¿Í Àç½ÃÀÛÇÒ¶§¸¸ mmap()
À»
ÇÑ´Ù. ±×·¡¼ ÆÄÀϽýºÅÛ¿¡¼ ÇØ´ç ÆÄÀÏÁß Çϳª¶óµµ º¯°æµÈ °æ¿ì
¼¹ö¸¦ Àç½ÃÀÛÇØ¾ß ÇÑ´Ù (Stopping and Restarting ¹®¼ Âü°í).
´Ù½Ã °Á¶Çϸé: ¼¹ö¸¦ Àç½ÃÀÛÇÏÁö¾Ê°í ÆÄÀÏÀ» ¼öÁ¤Çϸé
¿äû ¼ºñ½º°¡ ¿ÏÀüÈ÷ ÀÌ»óÇÒ ¼ö ÀÖ´Ù. ÀÌÀü ÆÄÀÏÀ» Áö¿ì°í(unlink)
»õ·Î ÆÄÀÏÀ» ¸¸µé¾î¼ ÆÄÀÏÀ» ¼öÁ¤ÇØ¾ß ÇÑ´Ù. rdist
³ª
mv
¿Í °°ÀÌ ¸¹Àº µµ±¸°¡ ÀÌ·± ½ÄÀ¸·Î µ¿ÀÛÇÑ´Ù.
¸Å¹ø Ãß°¡·Î ºÒÇÊ¿äÇÑ stat()
°Ë»ç°¡ ÇÊ¿äÇÏ°í
ÀÔÃâ·Â °¨¼ÒÀÇ Àǵµ¿¡ ¹ÝÇϹǷΠÀÌ ¸ðµâÀº ÆÄÀÏ º¯È¸¦ ½Å°æ¾²Áö¾Ê´Â´Ù.
sendfile()
¿¡ (À©µµ¿ìÁî¿¡¼´Â TransmitFile()
)
³Ñ±ä´Ù.
¼¹ö°¡ ½ÃÀÛÇÒ¶§¿Í Àç½ÃÀÛÇÒ¶§¸¸ ÀÌ·± ÆÄÀÏÇÚµé ij½¬¸¦
¸¸µç´Ù. ...
This file handle caching is done once at server start or
restart, only. So whenever one of the cached files changes on
the filesystem you have to restart the server (see the
Stopping and Restarting
documentation). To reiterate that point: if the files are
modified in place without restarting the server you
may end up serving requests that are completely bogus. You
should update files by unlinking the old copy and putting a new
copy in place. Most tools such as rdist
and
mv
do this.
µð·ºÅ丮ÀÇ ¸ðµç ÆÄÀÏÀ» Àç±ÍÀûÀ¸·Î ij½¬¿¡ ÀúÀåÇÏ´Â
Áö½Ã¾î¸¦ ¿ä±¸ÇÏÁö ¸¶¶ó. ´ë½Å ÀÌ·¸°Ô ÇغÁ¶ó...
The HUP
or USR1
signal should be send to
the server to re-mmap()
them.
Be careful with the file-path arguments: They have
to literally match the filesystem path Apache's URL-to-filename
translation handlers create. We cannot compare inodes or other
stuff to match paths through symbolic links etc.
because that again would cost extra stat()
system
calls which is not acceptable. This module may or may not work
with filenames rewritten by
The
Be careful with the file-path arguments: They have
to literally match the filesystem path Apache's URL-to-filename
translation handlers create. We cannot compare inodes or other
stuff to match paths through symbolic links etc.
because that again would cost extra stat()
system
calls which is not acceptable. This module may or may not work
with filenames rewritten by