249½¨Õ¾Ö®¼Ò£ºPHP·þÎñÆ÷ApacheÓëNginxµÄ¶Ô±È·ÖÎö
ApacheÓëNginxµÄÓÅȱµã±È½Ï
1¡¢nginxÏà¶ÔÓÚapacheµÄÓŵ㣺
ÇáÁ¿¼¶£¬Í¬ÑùÆðweb ·þÎñ£¬±Èapache Õ¼ÓøüÉÙµÄÄÚ´æ¼°×ÊÔ´
¿¹²¢·¢£¬nginx ´¦ÀíÇëÇóÊÇÒì²½·Ç×èÈûµÄ£¬¶øapache ÔòÊÇ×èÈûÐ͵ģ¬Ôڸ߲¢·¢ÏÂnginx Äܱ£³ÖµÍ×ÊÔ´µÍÏûºÄ¸ßÐÔÄÜ
¸ß¶ÈÄ£¿é»¯µÄÉè¼Æ£¬±àдģ¿éÏà¶Ô¼òµ¥
ÉçÇø»îÔ¾£¬¸÷ÖÖ¸ßÐÔÄÜÄ£¿é³öƷѸËÙ°¡
apache Ïà¶ÔÓÚnginx µÄÓŵ㣺
rewrite £¬±Ènginx µÄrewrite Ç¿´ó
Ä£¿é³¬¶à£¬»ù±¾Ïëµ½µÄ¶¼¿ÉÒÔÕÒµ½
ÉÙbug £¬nginx µÄbug Ïà¶Ô½Ï¶à
³¬Îȶ¨
´æÔÚ¾ÍÊÇÀíÓÉ£¬Ò»°ãÀ´Ëµ£¬ÐèÒªÐÔÄܵÄweb ·þÎñ£¬ÓÃnginx ¡£Èç¹û²»ÐèÒªÐÔÄÜÖ»ÇóÎȶ¨£¬ÄǾÍapache °É¡£ºóÕߵĸ÷ÖÖ¹¦ÄÜÄ£¿éʵÏֵñÈǰÕߣ¬ÀýÈçssl µÄÄ£¿é¾Í±ÈǰÕߺ㬿ÉÅäÖÃÏî¶à¡£ÕâÀïҪעÒâÒ»µã£¬epoll(freebsd ÉÏÊÇ kqueue )ÍøÂçIO Ä£ÐÍÊÇnginx ´¦ÀíÐÔÄܸߵĸù±¾ÀíÓÉ£¬µ«²¢²»ÊÇËùÓеÄÇé¿ö϶¼ÊÇepoll ´ó»ñȫʤµÄ£¬Èç¹û±¾ÉíÌṩ¾²Ì¬·þÎñµÄ¾ÍÖ»ÓÐÁÈÁȼ¸¸öÎļþ£¬apache µÄselect Ä£ÐÍ»òÐí±Èepoll ¸ü¸ßÐÔÄÜ¡£µ±È»£¬ÕâÖ»ÊǸù¾ÝÍøÂçIO Ä£Ð͵ÄÔÀí×÷µÄÒ»¸ö¼ÙÉè£¬ÕæÕýµÄÓ¦Óû¹ÊÇÐèҪʵ²âÁËÔÙ˵µÄ¡£
2¡¢×÷Ϊ Web ·þÎñÆ÷£ºÏà±È Apache£¬Nginx ʹÓøüÉÙµÄ×ÊÔ´£¬Ö§³Ö¸ü¶àµÄ²¢·¢Á¬½Ó£¬ÌåÏÖ¸ü¸ßµÄЧÂÊ£¬Õâµãʹ Nginx ÓÈÆäÊܵ½ÐéÄâÖ÷»úÌṩÉ̵϶ӡ£ÔÚ¸ßÁ¬½Ó²¢·¢µÄÇé¿öÏ£¬NginxÊÇApache·þÎñÆ÷²»´íµÄÌæ´úÆ·: NginxÔÚÃÀ¹úÊÇ×öÐéÄâÖ÷»úÉúÒâµÄÀϰåÃǾ³£Ñ¡ÔñµÄÈí¼þƽ̨֮һ. Äܹ»Ö§³Ö¸ß´ï 50,000 ¸ö²¢·¢Á¬½ÓÊýµÄÏìÓ¦, ¸ÐлNginxΪÎÒÃÇÑ¡ÔñÁË epoll and kqueue ×÷Ϊ¿ª·¢Ä£ÐÍ.
Nginx×÷Ϊ¸ºÔؾùºâ·þÎñÆ÷: Nginx ¼È¿ÉÒÔÔÚÄÚ²¿Ö±½ÓÖ§³Ö Rails ºÍ PHP ³ÌÐò¶ÔÍâ½øÐзþÎñ, Ò²¿ÉÒÔÖ§³Ö×÷Ϊ HTTP´úÀí ·þÎñÆ÷¶ÔÍâ½øÐзþÎñ. Nginx²ÉÓÃC½øÐбàд, ²»ÂÛÊÇϵͳ×ÊÔ´¿ªÏú»¹ÊÇCPUʹÓÃЧÂʶ¼±È Perlbal ÒªºÃºÜ¶à.
×÷ΪÓʼþ´úÀí·þÎñÆ÷: Nginx ͬʱҲÊÇÒ»¸ö·Ç³£ÓÅÐãµÄÓʼþ´úÀí·þÎñÆ÷£¨×îÔ翪·¢Õâ¸ö²úÆ·µÄÄ¿µÄÖ®Ò»Ò²ÊÇ×÷ΪÓʼþ´úÀí·þÎñÆ÷£©, Last.fm ÃèÊöÁ˳ɹ¦²¢ÇÒÃÀÃîµÄʹÓþÑé.
Nginx ÊÇÒ»¸ö°²×°·Ç³£µÄ¼òµ¥ , ÅäÖÃÎļþ·Ç³£¼ò½à£¨»¹Äܹ»Ö§³ÖperlÓï·¨£©, Bugs ·Ç³£ÉٵķþÎñÆ÷: Nginx Æô¶¯ÌرðÈÝÒ×, ²¢ÇÒ¼¸ºõ¿ÉÒÔ×öµ½7*24²»¼ä¶ÏÔËÐУ¬¼´Ê¹ÔËÐÐÊý¸öÔÂÒ²²»ÐèÒªÖØÐÂÆô¶¯. Ä㻹Äܹ»²»¼ä¶Ï·þÎñµÄÇé¿öϽøÐÐÈí¼þ°æ±¾µÄÉý¼¶ .
3¡¢Nginx ÅäÖüò½à, Apache ¸´ÔÓ
Nginx ¾²Ì¬´¦ÀíÐÔÄÜ±È Apache ¸ß 3±¶ÒÔÉÏ
Apache ¶Ô PHP Ö§³Ö±È½Ï¼òµ¥£¬Nginx ÐèÒªÅäºÏÆäËûºó¶ËÓÃ
Apache µÄ×é¼þ±È Nginx ¶à
ÏÖÔÚ Nginx ²ÅÊÇ Web ·þÎñÆ÷µÄÊ×Ñ¡
4¡¢×îºËÐĵÄÇø±ðÔÚÓÚapacheÊÇͬ²½¶à½ø³ÌÄ£ÐÍ£¬Ò»¸öÁ¬½Ó¶ÔÓ¦Ò»¸ö½ø³Ì£»nginxÊÇÒì²½µÄ£¬¶à¸öÁ¬½Ó£¨Íò¼¶±ð£©¿ÉÒÔ¶ÔÓ¦Ò»¸ö½ø³Ì
5¡¢nginx´¦Àí¾²Ì¬ÎļþºÃ,ºÄ·ÑÄÚ´æÉÙ.µ«ÎÞÒÉapacheÈÔÈ»ÊÇĿǰµÄÖ÷Á÷,Óкܶà·á¸»µÄÌØÐÔ.ËùÒÔ»¹ÐèÒª´îÅä×ÅÀ´.µ±È»Èç¹ûÄÜÈ·¶¨nginx¾ÍÊʺÏÐèÇó,ÄÇôʹÓÃnginx»áÊǸü¾¼ÃµÄ·½Ê½.
6¡¢´Ó¸öÈ˹ýÍùµÄʹÓÃÇé¿öÀ´¿´£¬nginxµÄ¸ºÔØÄÜÁ¦±Èapache¸ßºÜ¶à¡£×îеķþÎñÆ÷Ò²¸ÄÓÃnginxÁË¡£¶øÇÒnginx¸ÄÍêÅäÖÃÄÜ-t²âÊÔÒ»ÏÂÅäÖÃÓÐûÓÐÎÊÌ⣬apacheÖØÆôµÄʱºò·¢ÏÖÅäÖóö´íÁË£¬»áºÜ±ÀÀ££¬¸ÄµÄʱºò¶¼»á·Ç³£Ð¡ÐÄÒíÒíÏÖÔÚ¿´Óкö༯Ⱥվ£¬Ç°¶Ënginx¿¹²¢·¢£¬ºó¶Ëapache¼¯Èº£¬ÅäºÏµÄÒ²²»´í¡£
7¡¢nginx´¦Àí¶¯Ì¬ÇëÇóÊǼ¦Àߣ¬Ò»°ã¶¯Ì¬ÇëÇóÒªapacheÈ¥×ö£¬nginxÖ»ÊʺϾ²Ì¬ºÍ·´Ïò¡£
8¡¢?ÄÎÒ‚€È˵Ľ›òž?í¿´£¬nginxÊǺܲ»åeµÄǰ¶Ë·þ„ÕÆ÷£¬Ø“ÝdÐÔÄܺܺã¬ÔÚÀϱ¼ÉÏé_nginx£¬ÓÃwebbenchÄ£”M10000‚€ìo‘BÎļþÕˆÇóºÁ²»³ÔÁ¦¡£apacheŒ¦phpµÈÕZÑÔµÄÖ§³ÖºÜºÃ£¬´ËÍâapacheÓÐ?Š´óµÄÖ§³Ö¾W·£¬°lÕ¹•régÏàŒ¦nginx¸ü¾Ã£¬bugÉÙµ«ÊÇapacheÓÐÏÈÌì²»Ö§³Ö¶àºËÐÄÌŽÀíØ“ÝdëuÀßµÄȱüc£¬½¨×hʹÓÃnginx×öǰ¶Ë£¬áá¶ËÓÃapache¡£´óÐ;WÕ¾½¨×hÓÃnginx×Ô´úµÄ¼¯Èº¹¦ÄÜ
9¡¢NginxÓÅÓÚapacheµÄÖ÷ÒªÁ½µã£º1.Nginx±¾Éí¾ÍÊÇÒ»¸ö·´Ïò´úÀí·þÎñÆ÷ 2.NginxÖ§³Ö7²ã¸ºÔؾùºâ£»ÆäËûµÄµ±È»£¬Nginx¿ÉÄÜ»á±ÈapacheÖ§³Ö¸ü¸ßµÄ²¢·¢£¬µ«ÊǸù¾ÝNetCraftµÄͳ¼Æ£¬2011Äê4ÔµÄͳ¼ÆÊý¾Ý£¬ApacheÒÀȻռÓÐ62.71%£¬¶øNginxÊÇ7.35%£¬Òò´Ë×ܵÃÀ´Ëµ£¬AapcheÒÀÈ»ÊǴ󲿷ֹ«Ë¾µÄÊ×ÏÈ£¬ÒòΪÆä³ÉÊìµÄ¼¼ÊõºÍ¿ª·¢ÉçÇøÒѾҲÊǷdz£²»´íµÄÐÔÄÜ¡£
10¡¢Äã¶Ôweb serverµÄÐèÇó¾ö¶¨ÄãµÄÑ¡Ôñ¡£´ó²¿·ÖÇé¿öÏÂnginx¶¼ÓÅÓÚAPACHE£¬±ÈÈç˵¾²Ì¬Îļþ´¦Àí¡¢PHP-CGIµÄÖ§³Ö¡¢·´Ïò´úÀí¹¦ÄÜ¡¢Ç°¶ËCache¡¢Î¬³ÖÁ¬½ÓµÈµÈ¡£ÔÚApache+PHP£¨prefork£©Ä£Ê½Ï£¬Èç¹ûPHP´¦ÀíÂý»òÕßǰ¶ËѹÁ¦ºÜ´óµÄÇé¿öÏ£¬ºÜÈÝÒ׳öÏÖApache½ø³ÌÊýìÉý£¬´Ó¶ø¾Ü¾ø·þÎñµÄÏÖÏó¡£
11¡¢¿ÉÒÔ¿´Ò»ÏÂnginx luaÄ£¿é£ºhttps://github.com/chaoslaw...apache±Ènginx¶àµÄÄ£¿é£¬¿ÉÖ±½ÓÓÃluaʵÏÖapacheÊÇ×îÁ÷Ðеģ¬why£¿´ó¶àÊýÈËÀÁµÃ¸üе½nginx»òÕßѧÐÂÊÂÎï
12¡¢¶ÔÓÚnginx£¬ÎÒϲ»¶ËüÅäÖÃÎļþдµÄºÜ¼ò½à£¬ÕýÔòÅäÖÃÈúܶàÊÂÇé±äµÃ¼òµ¥ÔËÐÐЧÂʸߣ¬Õ¼ÓÃ×ÊÔ´ÉÙ£¬´úÀí¹¦ÄÜÇ¿´ó£¬ºÜÊʺÏ×öǰ¶ËÏìÓ¦·þÎñÆ÷
13¡¢ApacheÔÚ´¦Àí¶¯Ì¬ÓÐÓÅÊÆ£¬Nginx²¢·¢ÐԱȽϺã¬CPUÄÚ´æÕ¼Óõͣ¬Èç¹ûrewriteƵ·±£¬ÄÇ»¹ÊÇApache°É
NginxµÄÓŵãÊÇ£º
¹¤×÷ÔÚÍøÂçµÄ7²ãÖ®ÉÏ£¬¿ÉÒÔÕë¶ÔhttpÓ¦ÓÃ×öһЩ·ÖÁ÷µÄ²ßÂÔ£¬±ÈÈçÕë¶ÔÓòÃû¡¢Ä¿Â¼½á¹¹£¬ËüµÄÕýÔò¹æÔò±ÈHAProxy¸üΪǿ´óºÍÁé»î£¬ÕâÒ²ÊÇËüĿǰ¹ã·ºÁ÷ÐеÄÖ÷ÒªÔÒòÖ®Ò»£¬Nginxµ¥Æ¾Õâµã¿ÉÀûÓõij¡ºÏ¾ÍÔ¶¶àÓÚLVSÁË¡£
Nginx¶ÔÍøÂçÎȶ¨ÐÔµÄÒÀÀµ·Ç³£Ð¡£¬ÀíÂÛÉÏÄÜpingͨ¾Í¾ÍÄܽøÐиºÔع¦ÄÜ£¬Õâ¸öÒ²ÊÇËüµÄÓÅÊÆÖ®Ò»£»Ïà·´LVS¶ÔÍøÂçÎȶ¨ÐÔÒÀÀµ±È½Ï´ó£¬Õâµã±¾ÈËÉîÓÐÌå»á£»
Nginx°²×°ºÍÅäÖñȽϼòµ¥£¬²âÊÔÆðÀ´±È½Ï·½±ã£¬Ëü»ù±¾ÄܰѴíÎóÓÃÈÕÖ¾´òÓ¡³öÀ´¡£LVSµÄÅäÖᢲâÊÔ¾ÍÒª»¨±È½Ï³¤µÄʱ¼äÁË£¬LVS¶ÔÍøÂçÒÀÀµ±È½Ï´ó¡£
¿ÉÒԳе£¸ß¸ºÔØÑ¹Á¦ÇÒÎȶ¨£¬ÔÚÓ²¼þ²»²îµÄÇé¿öÏÂÒ»°ãÄÜÖ§³Å¼¸Íò´ÎµÄ²¢·¢Á¿£¬¸ºÔضȱÈLVSÏà¶ÔСЩ¡£
Nginx¿ÉÒÔͨ¹ý¶Ë¿Ú¼ì²âµ½·þÎñÆ÷ÄÚ²¿µÄ¹ÊÕÏ£¬±ÈÈç¸ù¾Ý·þÎñÆ÷´¦ÀíÍøÒ³·µ»ØµÄ״̬Âë¡¢³¬Ê±µÈµÈ£¬²¢ÇÒ»á°Ñ·µ»Ø´íÎóµÄÇëÇóÖØÐÂÌá½»µ½ÁíÒ»¸ö½Úµã£¬²»¹ýÆäÖÐȱµã¾ÍÊDz»Ö§³ÖurlÀ´¼ì²â¡£±ÈÈçÓû§ÕýÔÚÉÏ´«Ò»¸öÎļþ£¬¶ø´¦Àí¸ÃÉÏ´«µÄ½Úµã¸ÕºÃÔÚÉÏ´«¹ý³ÌÖгöÏÖ¹ÊÕÏ£¬Nginx»á°ÑÉÏ´«Çе½Áíһ̨·þÎñÆ÷ÖØÐ´¦Àí£¬¶øLVS¾ÍÖ±½Ó¶ÏµôÁË£¬Èç¹ûÊÇÉÏ´«Ò»¸öºÜ´óµÄÎļþ»òÕߺÜÖØÒªµÄÎļþµÄ»°£¬Óû§¿ÉÄÜ»áÒò´Ë¶ø²»Âú¡£
Nginx²»½ö½öÊÇÒ»¿îÓÅÐãµÄ¸ºÔؾùºâÆ÷/·´Ïò´úÀíÈí¼þ£¬ËüͬʱҲÊǹ¦ÄÜÇ¿´óµÄWebÓ¦Ó÷þÎñÆ÷¡£LNMPÒ²Êǽü¼¸Äê·Ç³£Á÷ÐеÄweb¼Ü¹¹£¬ÔÚ¸ßÁ÷Á¿µÄ»·¾³ÖÐÎȶ¨ÐÔÒ²ºÜºÃ¡£
NginxÏÖÔÚ×÷ΪWeb·´Ïò¼ÓËÙ»º´æÔ½À´Ô½³ÉÊìÁË£¬Ëٶȱȴ«Í³µÄSquid·þÎñÆ÷¸ü¿ì£¬¿ÉÒÔ¿¼ÂÇÓÃÆä×÷Ϊ·´Ïò´úÀí¼ÓËÙÆ÷¡£
Nginx¿É×÷ΪÖв㷴Ïò´úÀíʹÓã¬ÕâÒ»²ãÃæNginx»ù±¾ÉÏÎÞ¶ÔÊÖ£¬Î¨Ò»¿ÉÒÔ¶Ô±ÈNginxµÄ¾ÍÖ»ÓÐ lighttpdÁË£¬²»¹ý lighttpdĿǰ»¹Ã»ÓÐ×öµ½NginxÍêÈ«µÄ¹¦ÄÜ£¬ÅäÖÃÒ²²»ÄÇôÇåÎúÒ×¶Á£¬ÉçÇø×ÊÁÏҲԶԶûNginx»îÔ¾¡£
NginxÒ²¿É×÷Ϊ¾²Ì¬ÍøÒ³ºÍͼƬ·þÎñÆ÷£¬Õâ·½ÃæµÄÐÔÄÜÒ²ÎÞ¶ÔÊÖ¡£»¹ÓÐNginxÉçÇø·Ç³£»îÔ¾£¬µÚÈý·½Ä£¿éÒ²ºÜ¶à¡£
NginxµÄȱµãÊÇ£º
Nginx½öÄÜÖ§³Öhttp¡¢httpsºÍEmailÐÒ飬ÕâÑù¾ÍÔÚÊÊÓ÷¶Î§ÉÏÃæÐ¡Ð©£¬Õâ¸öÊÇËüµÄȱµã¡£
¶Ôºó¶Ë·þÎñÆ÷µÄ½¡¿µ¼ì²é£¬Ö»Ö§³Öͨ¹ý¶Ë¿ÚÀ´¼ì²â£¬²»Ö§³Öͨ¹ýurlÀ´¼ì²â¡£²»Ö§³ÖSessionµÄÖ±½Ó±£³Ö£¬µ«ÄÜͨ¹ýip_hashÀ´½â¾ö¡£
推荐
-
-
QQ空间
-
新浪微博
-
人人网
-
豆瓣
