>"One does not live by bread alone,but by every word that comes from the mouth of God" >--(MATTHEW4:4) #pythonå¼åæ¡æ¶ ä¸ç®¡æ¯pythonï¼è¿æ¯phpï¼äº¦æå«çåweb项ç®çè¯è¨ï¼ä¹è³äºåå ¶å®éweb项ç®çå¼åï¼ä¸è¬é½è¦ç¨å°ä¸ä¸ªç§°ä¹ä¸ºä»ä¹ä»ä¹æ¡æ¶çä¸è¥¿ã ##æ¡æ¶çåºæ¬æ¦å¿µ å¼åè¿å¯¹æ¡æ¶ç认è¯ï¼ç±äºå·¥ä½ä¹ æ¯åå·¥ä½å 容çä¸åï¼æå¾å¤§å·®å¼ï¼è¿éå§ä¸æªå[ç»´åºç¾ç§ä¸çä¸ç§å®ä¹](http://zh.wikipedia.org/wiki/%E8%BB%9F%E9%AB%94%E6%A1%86%E6%9E%B6)ï¼ä¹æä»¥è¦ç»åºä¸ä¸ªå®ä¹ï¼æ éæ¯è®©ç宿æäºè§£ï¼ä½æ¯æ¯å¦ç¥éè¿ä¸ªå®ä¹ï¼ä¸æ¯«ä¸å½±ååé¢çå·¥ä½ã >è½¯ä»¶æ¡æ¶ï¼Software frameworkï¼ï¼é常æçæ¯ä¸ºäºå®ç°æä¸ªä¸çæ åæå®æç¹å®åºæ¬ä»»å¡ç软件ç»ä»¶è§èï¼ä¹æä¸ºäºå®ç°æä¸ªè½¯ä»¶ç»ä»¶è§èæ¶ï¼æä¾è§èæè¦æ±ä¹åºç¡åè½ç软件产åã >æ¡æ¶çåè½ç±»ä¼¼äºåºç¡è®¾æ½ï¼ä¸å ·ä½ç软件åºç¨æ å ³ï¼ä½æ¯æä¾å¹¶å®ç°æä¸ºåºç¡çè½¯ä»¶æ¶æåä½ç³»ã软件å¼åè é叏便®ç¹å®çæ¡æ¶å®ç°æ´ä¸ºå¤æçåä¸è¿ç¨åä¸å¡é»è¾ãè¿æ ·ç软件åºç¨å¯ä»¥å¨æ¯æåä¸ç§æ¡æ¶ç软件系ç»ä¸è¿è¡ã >ç®èè¨ä¹ï¼æ¡æ¶å°±æ¯å¶å®ä¸å¥è§èæè è§åï¼ææ³ï¼ï¼å¤§å®¶ï¼ç¨åºåï¼å¨è¯¥è§èæè è§åï¼ææ³ï¼ä¸å·¥ä½ãæè 说就æ¯ä½¿ç¨å«äººæå¥½çèå°ï¼ä½ æ¥å表æ¼ã ææ¯è¾å欢æåä¸å¥çè§£éï¼å«äººæå¥½èå°ï¼ææ¥è¡¨æ¼ãè¿ä¹å°±æ¯è¯´ï¼å¦ææå¨åweb项ç®çæ¶åï¼è½å¤çå´å¾å¤å¼åå·¥ä½ãçç¡®æ¯ãææï¼åwebå¼åï¼è¦ç¨ä¸ä¸ªæ¡æ¶ã æé«æå·¥ç¨å¸éè§æ¡æ¶ï¼è®¤ä¸ºèªå·±ç¼åçææ¯çéãè¿æ¹é¢ä¸äºè®ºï¼æ¡æ¶æ¯å¼åä¸å¾æµè¡çä¸è¥¿ï¼æè¿æ¯åºæ§å°è®¤ä¸ºç¨æ¡æ¶æ¥å¼åï¼æ´åç®ã ##pythonæ¡æ¶ æäººè¯´php(ä»ä¹æ¯phpï¼ä¸¥èç说æ³ï¼è¿æ¯å¦å¤ä¸ç§è¯è¨ï¼æ´é«é ç说æ³ï¼æ¯æä¸ªæ´»å¨çæ±è¯æ¼é³ç®ç§°ï¼æ¡æ¶å¤ï¼æä¸å¦è®¤ï¼phpçå¼åæ¡æ¶çç¡®å¾å¤å¾å¤ãä¸è¿ï¼pythonçwebå¼åæ¡æ¶ï¼ä¹è¶³å¤ä½¿ç¨äºï¼å举å ç§å¸¸è§çwebæ¡æ¶ï¼ - Django:è¿æ¯ä¸ä¸ªè¢«å¹¿æ³åºç¨çæ¡æ¶ï¼å¦æçå®å¨ç½ä¸æç´¢ï¼ä¼åç°å¾å¤å ¬å¸å¨æèçæ¶å就说è¦ä¼è¿ä¸ªï¼å ¶å®è¿ç§æèå°±æ´é²äºè¯¥å ¬å¸çå¼åæ°´å¹³è¦æ±ä¸é«ãæ¡æ¶åªæ¯è¾ å©ï¼çæ£çç¨åºåï¼ç¨ä»ä¹æ¡æ¶ï¼é½åºè¯¥æ¯æ ¹æ®éè¦èæ¥ãå½ç¶ä¸åæ¡æ¶æä¸åçç¹ç¹ï¼éè¦å¦ä¹ 䏿®µæ¶é´ã - Flaskï¼ä¸ä¸ªç¨Pythonç¼åçè½»é级Webåºç¨æ¡æ¶ãåºäºWerkzeug WSGIå·¥å ·ç®±åJinja2模æ¿å¼æã - Web2pyï¼æ¯ä¸ä¸ªä¸ºPythonè¯è¨æä¾çå ¨åè½Webåºç¨æ¡æ¶ï¼æ¨å¨ææ·å¿«éçå¼åWebåºç¨ï¼å ·æå¿«éãå®å ¨ä»¥åå¯ç§»æ¤çæ°æ®åºé©±å¨çåºç¨ï¼å ¼å®¹Google App Engineï¼è¿æ¯googleçå 计ç®å¼æï¼å颿ä¼åç¬ä»ç»ï¼ã - Bottle: å¾®åPython Webæ¡æ¶ï¼éµå¾ªWSGIï¼è¯´å¾®åï¼æ¯å 为å®åªæä¸ä¸ªæä»¶ï¼é¤Pythonæ ååºå¤ï¼å®ä¸ä¾èµäºä»»ä½ç¬¬ä¸æ¹æ¨¡åã - Tornadoï¼å ¨ç§°æ¯Torado Web Serverï¼ä»ååä¸çå°±å¯ç¥éå®å¯ä»¥ç¨ä½Webæå¡å¨ï¼ä½åæ¶å®ä¹æ¯ä¸ä¸ªPython Webçå¼åæ¡æ¶ãæåæ¯å¨FriendFeedå ¬å¸çç½ç«ä¸ä½¿ç¨ï¼FaceBookæ¶è´äºä¹åä¾¿å¼æºäºåºæ¥ã - webpy: è½»é级çPython Webæ¡æ¶ãwebpyç设计çå¿µåæ±ç²¾ç®ï¼Keep it simple and powerfulï¼ï¼æºç å¾ç®çï¼åªæä¾ä¸ä¸ªæ¡æ¶æå¿ é¡»çä¸è¥¿ï¼ä¸ä¾èµå¤§éçç¬¬ä¸æ¹æ¨¡åï¼å®æ²¡æURLè·¯ç±ãæ²¡ææ¨¡æ¿ä¹æ²¡ææ°æ®åºç访é®ã 说æï¼ä»¥ä¸ä¿¡æ¯éèªï¼http://blog.jobbole.com/72306/ï¼è¿ç¯æç« ä¸è¿æå«çæ¡æ¶ï¼ç±äºä¸æ¯webæ¡æ¶ï¼ææ²¡æéæï¼æå ´è¶£çå»é 读ã ##Tornado ä¸çå°è¿ä¸ªæ é¢å°±ç¥éï¼æ¬æç¨ä¸å°éæ©ä½¿ç¨è¿ä¸ªæ¡æ¶ãæ¤åææå建议æç¨Djangoï¼é¦å 宿¯ä¸ä¸ªå¥½ä¸è¥¿ã使¯ï¼ææ´æ¿æç¨Tornado,为ä»ä¹å¢ï¼å 为......ï¼çä¸è¾¹æè®¸æ¯çç±ï¼ä¹æè®¸ä¸æ¯ã Tornadoå ¨ç§°Tornado Web Serverï¼æ¯ä¸ä¸ªç¨Pythonè¯è¨åæçWebæå¡å¨å ¼Webåºç¨æ¡æ¶ï¼ç±FriendFeedå ¬å¸å¨èªå·±çç½ç«FriendFeedä¸ä½¿ç¨ï¼è¢«Facebookæ¶è´ä»¥åæ¡æ¶ä»¥å¼æºè½¯ä»¶å½¢å¼å¼æ¾ç»å¤§ä¼ãçæ¥Tornadoçåºèº«é«è´µåï¼å¯¹äºï¼å¦ææ¯å¨å¤©æççå®ï¼å¯è½å¯¹Facebookæé£é»ï¼ä½æ¯è¦ä¸ç¹å ¶è³å®¹ï¼è¿è¦åªåãæè æäººæ¯ä¸æ¯æçè¿ä¸ªå°çä¸å°±æ²¡æè¿ä¸ªç½ç«å¢ï¼ååãæç §æä¸ªå°æ¹çç½ç»ï¼å®æ¯åå¨çãåºè¯ä¸è¯´ï¼è¿æ¯çTornadoçæ§è½ï¼å ä¸ºéæ¡æ¶ï¼ä¸å®è¦é好æ§è½çï¼æ²¡åå¿ä»ä¹æ¶åä½ ä¹å¼åé«å¤§ä¸çä¸è¥¿äºã Tornadoçæ§è½æ¯ç¸å½ä¼å¼çï¼å 为å®è¯å¾è§£å³ä¸ä¸ªè¢«ç§°ä¹ä¸ºâC10kâé®é¢ï¼å°±æ¯å¤çå¤§äºæçäºä¸ä¸çå¹¶åãä¸ä¸åï¼è¿å¯æ¯ä¸å°çéã(å ³äºC10Ké®é¢ï¼çå®å¯ä»¥æµè§ï¼[C10k problem](http://en.wikipedia.org/wiki/C10k_problem)) ä¸è¡¨æ¯åä¸äºå ¶ä»Webæ¡æ¶ä¸æå¡å¨ç对æ¯ï¼ä¾çå®åèï¼æ°æ®æ¥æºï¼https://developers.facebook.com/blog/post/301ï¼ æ¡ä»¶ï¼å¤çå¨ä¸º AMD Opteron, 主é¢2.4GHz, 4æ ¸ |æå¡| é¨ç½² | 请æ±/æ¯ç§| |----|-------|-----------| |Tornado| nginx, 4è¿ç¨|8213| |Tornado|1个å线ç¨è¿ç¨|3353| |Django|Apache/mod_wsgi|2223| |web.py|Apache/mod_wsgi|2066| |CherryPy|ç¬ç«|785| çäºè¿ä¸ªå¯¹æ¯è¡¨æ ¼ï¼è¿æä»ä¹çç±ä¸éæ©Tornadoå¢ï¼ å°±æ¯å®äºââ**Tornado** ##å®è£ Tornado Tornadoç宿¹ç½ç«ï¼[http://www.tornadoweb.org](http://www.tornadoweb.org/en/latest/) å¨å®ç½ä¸ï¼æå®è£ æ¹æ³ï¼å ¶å®ï¼çå®ä¹å¯ä»¥ç´æ¥å¨å®æ¹ä¸å¦ä¹ ãå¦å¤ï¼æä¸ä¸ªä¸æéåç½ç«ï¼çå®ä¹å¯ä»¥è®¿é®ï¼http://www.tornadoweb.cn/ æå¨èªå·±çµèä¸ï¼ubuntu12.04)ï¼ç¨ä¸é¢æ¹æ³å®è£ ï¼åªéè¦ä¸å¥è¯å³å¯ï¼ pip install tornado è¿æ¯å 为Tornadoå·²ç»åå ¥PyPIï¼å æ¤å¯ä»¥éè¿ pip æè easy_install æ¥å®è£ ã å¦æä½ æ²¡æå®è£ libcurl çè¯ï¼ä½ éè¦å°å ¶åç¬å®è£ å°ç³»ç»ä¸ã请åè§ä¸é¢çå®è£ ä¾èµä¸èã 妿ä¸ç¨è¿ç§æ¹å¼å®è£ ï¼ä¸é¢ç页é¢ä¸æå¯ä»¥ä¾çå®ä¸è½½çææ°æºç çæ¬åå®è£ æ¹å¼ï¼ [https://pypi.python.org/pypi/tornado/](https://pypi.python.org/pypi/tornado/) æ¤å¤ï¼å¨githubä¸ä¹ææç®¡ï¼çå®å¯ä»¥éè¿ä¸è¿°é¡µé¢è¿å ¥å°githubçæºç ã æåè¦è¡¥å ä¸ä¸ªè¦ç¹ï¼å°±æ¯ä¸è¿°ä¸è½½çTornadoæ æ³ç´æ¥å®è£ å¨windowsä¸ï¼å¦æè¦å¨windowsä¸å®è£ ï¼å»ºè®®ä½¿ç¨pypmï¼è¿æ¯ä¸ä¸ªä»ä¹ä¸è¥¿ï¼å ³äºè¿ä¸ªä¸è¥¿ï¼å¯ä»¥è®¿é®å®æ¹ææ¡£ï¼http://docs.activestate.com/activepython/2.6/pypm.htmlï¼è¯´å®è¯ï¼æä¹æ²¡æç¨è¿å®ï¼åªæ¯çäºçææ¡£ç½¢äºãçå®å¦ææä½¿ç¨çï¼å¯ä»¥åä¸ä¸ªæç¨å ±äº«ä¹ãï¼ï¼å¦ä¸å®è£ ï¼ C:\> pypm install tornado