±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½éÉÜÁË
Nginx µÄ¼Ü¹¹Éè¼Æ£¬°üÀ¨Ä£¿é»¯Éè¼Æ¡¢Ê¼þÇý¶¯¼Ü¹¹¡¢ÇëÇóµÄ¶à½×¶ÎÒì²½´¦Àí¡¢¹ÜÀí½ø³ÌÓë¶à¹¤×÷½ø³ÌÉè¼Æ¡¢ÄÚ´æ³ØµÄÉè¼Æ¡£
±¾ÎÄÀ´×ÔÓÚ΢ÐŹ«Öںżܹ¹Ê¦ £¬ÓÉ»ðÁú¹ûÈí¼þLinda±à¼ÍƼö¡£ |
|

ǰÑÔ
×î½üÔÚ¶Á Nginx Ïà¹ØµÄÊé¼®£¬×öһ϶ÁÊé±Ê¼Ç¡£
Nginx ×÷Ϊҵ½çÖªÃûµÄ¸ßÐÔÄÜ·þÎñÆ÷£¬±»¹ã·ºµÄÓ¦Óá£ËüµÄ¸ßÐÔÄÜÕýÊÇÓÉÓÚÆäÓÅÐãµÄ¼Ü¹¹Éè¼Æ£¬Æä¼Ü¹¹Ö÷Òª°üÀ¨Õ⼸µã£ºÄ£¿é»¯Éè¼Æ¡¢Ê¼þÇý¶¯¼Ü¹¹¡¢ÇëÇóµÄ¶à½×¶ÎÒì²½´¦Àí¡¢¹ÜÀí½ø³ÌÓë¶à¹¤×÷½ø³ÌÉè¼Æ¡¢ÄÚ´æ³ØµÄÉè¼Æ£¬ÒÔÏÂÄÚÈÝÒÀ´Î½øÐÐ˵Ã÷¡£
Ä£¿é»¯Éè¼Æ
¸ß¶ÈÄ£¿é»¯µÄÉè¼ÆÊÇ Nginx µÄ¼Ü¹¹»ù´¡¡£ÔÚ Nginx ÖУ¬³ýÁËÉÙÁ¿µÄºËÐÄ´úÂ룬ÆäËûÒ»ÇнÔΪģ¿é¡£
ËùÓÐÄ£¿é¼äÊÇ·Ö²ã´Î¡¢·ÖÀà±ðµÄ£¬Nginx ¹Ù·½¹²ÓÐÎå´óÀàÐ͵ÄÄ£¿é£ººËÐÄÄ£¿é¡¢ÅäÖÃÄ£¿é¡¢Ê¼þÄ£¿é¡¢HTTP
Ä£¿é¡¢mail Ä£¿é¡£ËüÃÇÖ®¼äµÄ¹ØÏµÈçÏ£º 
ÔÚÕâ 5 ÖÖÄ£¿éÖУ¬ÅäÖÃÄ£¿éºÍºËÐÄÄ£¿éÊÇÓë Nginx ¿ò¼ÜÃÜÇÐÏà¹ØµÄ¡£¶øÊ¼þÄ£¿éÔòÊÇ HTTP Ä£¿éºÍ
mail Ä£¿éµÄ»ù´¡¡£HTTP Ä£¿éºÍ mail Ä£¿éµÄ¡°µØÎ»¡±ÀàËÆ£¬ËüÃǶ¼ÊǸü¹Ø×¢ÓÚÓ¦ÓòãÃæ¡£
ʼþÇý¶¯¼Ü¹¹
ʼþÇý¶¯¼Ü¹¹£¬¼òµ¥µÄ˵¾ÍÊÇÓÉһЩʼþ·¢ÉúÔ´À´²úÉúʼþ£¬ÓÉʼþÊÕ¼¯Æ÷À´ÊÕ¼¯¡¢·Ö·¢Ê¼þ£¬È»ºóÓÉʼþ´¦ÀíÆ÷À´´¦ÀíÕâЩʼþ£¨Ê¼þ´¦ÀíÆ÷ÐèÒªÏÈÔÚʼþÊÕ¼¯Æ÷Àï×¢²á×Ô¼ºÏë´¦ÀíµÄʼþ£©¡£
¶ÔÓÚ Nginx ·þÎñÆ÷¶øÑÔ£¬Ò»°ãÓÉÍø¿¨¡¢´ÅÅ̲úÉúʼþ£¬Nginx ÖеÄʼþÄ£¿é½«¸ºÔðʼþµÄÊÕ¼¯¡¢·Ö·¢²Ù×÷£»¶øËùÓеÄÄ£¿é¶¼¿ÉÄÜÊÇʼþÏû·ÑÕߣ¬ËüÃÇÊ×ÏÈÐèÒªÏòʼþÄ£¿é×¢²á¸ÐÐËȤµÄʼþÀàÐÍ£¬ÕâÑù£¬ÔÚÓÐʼþ²úÉúʱ£¬Ê¼þÄ£¿é»á°Ñʼþ·Ö·¢µ½ÏàÓ¦µÄÄ£¿éÖнøÐд¦Àí¡£
¶ÔÓÚ´«Í³ web ·þÎñÆ÷£¨Èç Apache£©¶øÑÔ£¬²ÉÓõÄËùνʼþÇý¶¯ÍùÍù¾ÖÏÞÔÚ TCP Á¬½Ó½¨Á¢¡¢¹Ø±ÕʼþÉÏ£¬Ò»¸öÁ¬½Ó½¨Á¢ÒÔºó£¬ÔÚÆä¹Ø±Õ֮ǰµÄËùÓвÙ×÷¶¼²»ÔÙÊÇʼþÇý¶¯£¬Õâʱ»áÍË»¯³É°´Ë³ÐòÖ´ÐÐÿ¸ö²Ù×÷µÄÅú´¦Àíģʽ£¬ÕâÑùÿ¸öÇëÇóÔÚÁ¬½Ó½¨Á¢ºó¶¼½«Ê¼ÖÕÕ¼ÓÃ×Åϵͳ×ÊÔ´£¬Ö±µ½¹Ø±Õ²Å»áÊÍ·Å×ÊÔ´¡£ÕâÖÖÇëÇóÕ¼ÓÃ×Å·þÎñÆ÷×ÊÔ´µÈ´ý´¦ÀíµÄģʽ»áÔì³É·þÎñÆ÷×ÊÔ´¼«´óµÄÀË·Ñ¡£ÈçÏÂͼËùʾ£¬´«Í³
web ·þÎñÆ÷ÍùÍù°ÑÒ»¸ö½ø³Ì»òÏß³Ì×÷Ϊʱ¼äÏû·ÑÕߣ¬µ±Ò»¸öÇëÇó²úÉúµÄʼþ±»¸Ã½ø³Ì´¦Àíʱ£¬Ö±µ½Õâ¸öÇëÇó´¦Àí½áÊøÊ±£¬½ø³Ì×ÊÔ´¶¼½«±»ÕâÒ»ÇëÇóËùÕ¼ÓᣱȽϵäÐ͵ÄÀý×ÓÈç
Apache ͬ²½×èÈûµÄ¶à½ø³Ìģʽ¾ÍÊÇÕâÑùµÄ¡£
´«Í³ web ·þÎñÆ÷´¦ÀíʼþµÄ¼òµ¥Ä£ÐÍ£¨¾ØÐδú±í½ø³Ì£©:

Nginx ²ÉÓÃʼþÇý¶¯¼Ü¹¹´¦ÀíÒµÎñµÄ·½Ê½Ó봫ͳµÄ web ·þÎñÆ÷ÊDz»Í¬µÄ¡£Ëü²»Ê¹Óýø³Ì»òÕßÏß³ÌÀ´×÷ΪʼþÏû·ÑÕߣ¬ËùνµÄʼþÏû·ÑÕßÖ»ÄÜÊÇij¸öÄ£¿é¡£Ö»ÓÐʼþÊÕ¼¯¡¢·Ö·¢Æ÷²ÅÓÐ×ʸñÕ¼Óýø³Ì×ÊÔ´£¬ËüÃÇ»áÔÚ·Ö·¢Ä³¸öʼþʱµ÷ÓÃʼþÏû·ÑÄ£¿éʹÓõ±Ç°Õ¼ÓõĽø³Ì×ÊÔ´£¬ÈçÏÂͼËùʾ£¬¸ÃͼÖÐÁгöÁË
5 ¸ö²»Í¬µÄʼþ£¬ÔÚʼþÊÕ¼¯¡¢·Ö·¢Õß½ø³ÌµÄÒ»´Î´¦Àí¹ý³ÌÖУ¬Õâ 5 ¸öʼþ°´ÕÕ˳Ðò±»ÊÕ¼¯ºó£¬½«¿ªÊ¼Ê¹Óõ±Ç°½ø³Ì·Ö·¢Ê¼þ£¬´Ó¶øµ÷ÓÃÏàÓ¦µÄʼþÏû·ÑÕßÀ´´¦Àíʼþ¡£µ±È»£¬ÕâÖÖ·Ö·¢¡¢µ÷ÓÃÒ²ÊÇÓÐÐòµÄ¡£
Nginx ´¦ÀíʼþµÄ¼òµ¥Ä£ÐÍ£º

ÓÉÉÏͼ¿ÉÒÔ¿´³ö£¬´¦ÀíÇëÇóʼþʱ£¬Nginx µÄʼþÏû·ÑÕßÖ»ÊDZ»Ê¼þ·Ö·¢Õß½ø³Ì¶ÌÆÚµ÷ÓöøÒÑ£¬ÕâÖÖÉè¼ÆÊ¹µÃÍøÂçÐÔÄÜ¡¢Óû§¸ÐÖªµÄÇëÇóʱÑÓ¶¼µÃµ½ÁËÌáÉý£¬Ã¿¸öÓû§µÄÇëÇóËù²úÉúµÄʼþ»á¼°Ê±ÏìÓ¦£¬Õû¸ö·þÎñÆ÷µÄÍøÂçÍÌÍÂÁ¿¶¼»áÓÉÓÚʼþµÄ¼°Ê±ÏìÓ¦¶øÔö´ó¡£µ±È»£¬ÕâÒ²´øÀ´Ò»¶¨µÄÒªÇ󣬼´Ã¿¸öʼþÏû·ÑÕß¶¼²»ÄÜÓÐ×èÈûÐÐΪ£¬·ñÔò½«»áÓÉÓÚ³¤Ê±¼äÕ¼ÓÃʼþ·Ö·¢Õß½ø³Ì¶øµ¼ÖÂÆäËûʼþµÃ²»µ½¼°Ê±ÏìÓ¦£¬Nginx
µÄ·Ç×èÈûÌØÐÔ¾ÍÊÇÓÉÓÚËüµÄÄ£¿é¶¼ÊÇÂú×ãÕâ¸öÒªÇóµÄ¡£
ÇëÇóµÄ¶à½×¶ÎÒì²½´¦Àí
¶à½×¶ÎÒì²½´¦ÀíÇëÇóÓëʼþÇý¶¯¼Ü¹¹ÊÇÃÜÇÐÏà¹ØµÄ£¬Ò²¾ÍÊÇ˵£¬ÇëÇóµÄ¶à½×¶ÎÒì²½´¦ÀíÖ»ÄÜ»ùÓÚʼþÇý¶¯¼Ü¹¹ÊµÏÖ¡£¶à½×¶ÎÒì²½´¦Àí¾ÍÊǰÑÒ»¸öÇëÇóµÄ´¦Àí¹ý³Ì°´ÕÕʼþµÄ´¥·¢·½Ê½»®·ÖΪ¶à¸ö½×¶Î£¬Ã¿¸ö½×¶Î¶¼¿ÉÒÔÓÉʼþÊÕ¼¯¡¢·Ö·¢Æ÷À´´¥·¢¡£
´¦Àí»ñÈ¡¾²Ì¬ÎļþµÄ HTTP ÇëÇóʱÇзֵĽ׶μ°¸÷½×¶ÎµÄ´¥·¢Ê¼þÈçÏÂËùʾ£º

Õâ¸öÀý×ÓÖУ¬¸ÃÇëÇó´óÖ·ÖΪ 7 ¸ö½×¶Î£¬ÕâЩ½×¶ÎÊÇ¿ÉÒÔÖØ¸´·¢ÉúµÄ£¬Òò´Ë£¬Ò»¸öÏÂÔØ¾²Ì¬×ÊÔ´ÇëÇó¿ÉÄÜ»áÓÉÓÚÇëÇóÊý¾Ý¹ý´ó£¬ÍøËÙ²»Îȶ¨µÈÒòËØ¶ø±»·Ö½âΪ³É°ÙÉÏǧ¸öÉÏͼËùÁгöµÄ½×¶Î¡£
Òì²½´¦ÀíºÍ¶à½×¶ÎÊÇÏศÏà³ÉµÄ£¬Ö»ÓаÑÇëÇó·ÖΪ¶à¸ö½×¶Î£¬²ÅÓÐËùνµÄÒì²½´¦Àí¡£µ±Ò»¸öʱ¼ä±»·Ö·¢µ½Ê¼þÏû·ÑÕßÖнøÐд¦Àíʱ£¬Ê¼þÏû·ÑÕß´¦ÀíÍêÕâ¸öʼþÖ»Ï൱ÓÚ´¦ÀíÍê
1 ¸öÇëÇóµÄ½×¶Î¡£Ê²Ã´Ê±ºò¿ÉÒÔ´¦ÀíÏÂÒ»¸ö½×¶ÎÄØ£¿ÕâÖ»ÄܵȴýÄں˵Ä֪ͨ£¬¼´µ±ÏÂÒ»´Îʼþ³öÏÖʱ£¬epoll
µÈʼþ·Ö·¢Æ÷½«»á»ñÈ¡µ½Í¨Öª£¬È»ºóÈ¥µ÷ÓÃʼþÏû·ÑÕß½øÐд¦Àí¡£
¹ÜÀí½ø³Ì¡¢¶à¹¤×÷½ø³ÌÉè¼Æ
Nginx ÔÚÆô¶¯ºó£¬»áÓÐÒ»¸ö master ½ø³ÌºÍ¶à¸ö worker ½ø³Ì¡£master ½ø³ÌÖ÷ÒªÓÃÀ´¹ÜÀíworker
½ø³Ì£¬°üÀ¨½ÓÊÕÀ´×ÔÍâ½çµÄÐźţ¬Ïò¸÷ worker ½ø³Ì·¢ËÍÐźţ¬¼à¿Ø worker ½ø³ÌµÄÔËÐÐ״̬ÒÔ¼°Æô¶¯
worker ½ø³Ì¡£worker ½ø³ÌÊÇÓÃÀ´´¦ÀíÀ´×Ô¿Í»§¶ËµÄÇëÇóʼþ¡£¶à¸ö worker ½ø³ÌÖ®¼äÊǶԵȵģ¬ËüÃÇͬµÈ¾ºÕùÀ´×Ô¿Í»§¶ËµÄÇëÇ󣬸÷½ø³Ì»¥Ïà¶ÀÁ¢£¬Ò»¸öÇëÇóÖ»ÄÜÔÚÒ»¸ö
worker ½ø³ÌÖд¦Àí¡£worker ½ø³ÌµÄ¸öÊýÊÇ¿ÉÒÔÉèÖõģ¬Ò»°ã»áÉèÖÃÓë»úÆ÷ CPU ºËÊýÒ»Ö£¬ÕâÀïÃæµÄÔÒòÓëʼþ´¦ÀíÄ£ÐÍÓйء£Nginx
µÄ½ø³ÌÄ£ÐÍ£¬¿ÉÓÉÏÂͼÀ´±íʾ£º 
ÔÚ·þÎñÆ÷Éϲ鿴 Nginx ½ø³Ì£º 
ÕâÖÖÉè¼Æ´øÀ´ÒÔÏÂÓŵ㣺
1£© ÀûÓöàºËϵͳµÄ²¢·¢´¦ÀíÄÜÁ¦
ÏÖ´ú²Ù×÷ϵͳÒѾ֧³Ö¶àºË CPU ¼Ü¹¹£¬ÕâʹµÃ¶à¸ö½ø³Ì¿ÉÒÔ·Ö±ðÕ¼Óò»Í¬µÄ CPU ºËÐÄÀ´¹¤×÷¡£Nginx
ÖÐËùÓÐµÄ worker ¹¤×÷½ø³Ì¶¼ÊÇÍêȫƽµÈµÄ¡£ÕâÌá¸ßÁËÍøÂçÐÔÄÜ¡¢½µµÍÁËÇëÇóµÄʱÑÓ¡£
2£© ¸ºÔؾùºâ
¶à¸ö worker ¹¤×÷½ø³Ìͨ¹ý½ø³Ì¼äͨÐÅÀ´ÊµÏÖ¸ºÔؾùºâ£¬¼´Ò»¸öÇëÇóµ½À´Ê±¸üÈÝÒ×±»·ÖÅäµ½¸ºÔؽÏÇáµÄ
worker ¹¤×÷½ø³ÌÖд¦Àí¡£ÕâÒ²ÔÚÒ»¶¨³Ì¶ÈÉÏÌá¸ßÁËÍøÂçÐÔÄÜ¡¢½µµÍÁËÇëÇóµÄʱÑÓ¡£
3£© ¹ÜÀí½ø³Ì»á¸ºÔð¼à¿Ø¹¤×÷½ø³ÌµÄ״̬£¬²¢¸ºÔð¹ÜÀíÆäÐÐΪ
¹ÜÀí½ø³Ì²»»áÕ¼ÓöàÉÙϵͳ×ÊÔ´£¬ËüÖ»ÊÇÓÃÀ´Æô¶¯¡¢Í£Ö¹¡¢¼à¿Ø»òʹÓÃÆäËûÐÐΪÀ´¿ØÖƹ¤×÷½ø³Ì¡£Ê×ÏÈ£¬ÕâÌá¸ßÁËϵͳµÄ¿É¿¿ÐÔ£¬µ±
worker ½ø³Ì³öÏÖÎÊÌâʱ£¬¹ÜÀí½ø³Ì¿ÉÒÔÆô¶¯ÐµĹ¤×÷½ø³ÌÀ´±ÜÃâϵͳÐÔÄܵÄϽµ¡£Æä´Î£¬¹ÜÀí½ø³ÌÖ§³Ö
Nginx ·þÎñÔËÐÐÖеijÌÐòÉý¼¶¡¢ÅäÖÃÏîÐ޸ĵȲÙ×÷£¬ÕâÖÖÉè¼ÆÊ¹µÃ¶¯Ì¬¿ÉÀ©Õ¹ÐÔ¡¢¶¯Ì¬¶¨ÖÆÐÔ½ÏÈÝÒ×ʵÏÖ¡£
ÄÚ´æ³ØµÄÉè¼Æ
ΪÁ˱ÜÃâ³öÏÖÄÚ´æË鯬£¬¼õÉÙÏò²Ù×÷ϵͳÉêÇëÄÚ´æµÄ´ÎÊý¡¢½µµÍ¸÷¸öÄ£¿éµÄ¿ª·¢¸´ÔÓ¶È£¬Nginx Éè¼ÆÁ˼òµ¥µÄÄÚ´æ³Ø£¬ËüµÄ×÷ÓÃÖ÷ÒªÊǰѶà´ÎÏòϵͳÉêÇëÄÚ´æµÄ²Ù×÷ÕûºÏ³ÉÒ»´Î£¬Õâ´ó´ó¼õÉÙÁË
CPU ×ÊÔ´µÄÏûºÄ£¬Í¬Ê±¼õÉÙÁËÄÚ´æË鯬¡£
Òò´Ë£¬Í¨³£Ã¿Ò»¸öÇëÇó¶¼ÓÐÒ»¸ö¼òÒ׵ĶÀÁ¢ÄÚ´æ³Ø£¨Èçÿ¸ö TCP Á¬½Ó¶¼·ÖÅäÁËÒ»¸öÄÚ´æ³Ø£©£¬¶øÔÚÇëÇó½áÊøÊ±Ôò»áÏú»ÙÕû¸öÄÚ´æ³Ø£¬°ÑÔø¾·ÖÅäµÄÄÚ´æÒ»´ÎÐԹ黹¸ø²Ù×÷ϵͳ¡£ÕâÖÖÉè¼Æ´ó´óÌá¸ßÁËÄ£¿é¿ª·¢µÄ¼òµ¥Ð©£¬ÒòΪÔÚÄ£¿éÉêÇëÄÚ´æºó²»ÓùØÐÄËüµÄÊÍ·ÅÎÊÌ⣻¶øÇÒÒòΪ·ÖÅäÄÚ´æ´ÎÊýµÄ¼õÉÙʹµÃÇëÇóÖ´ÐеÄʱÑӵõ½Á˽µµÍ¡£Í¬Ê±£¬Í¨¹ý¼õÉÙÄÚ´æË鯬£¬Ìá¸ßÁËÄÚ´æµÄÓÐЧÀûÓÃÂʺÍϵͳ¿É´¦ÀíµÄ²¢·¢Á¬½ÓÊý£¬´Ó¶øÔöÇ¿ÁËÍøÂçÐÔÄÜ¡£ |