>å£ç»é½æ¯ç¥æé»ç¤ºçï¼äºæè®ãç£è´£ãä½¿äººå½æ£ãæå¯¼äººå¦ä¹é½æ¯æççï¼å«å±ç¥ç人å¾ä»¥å®å ¨ï¼é¢å¤è¡åæ ·çåäºã(2 TIMOTHY 3:16-17) #为åç½ç«èåå¤ ä½ä¸ºä¸ä¸ªç¨åºç¿ä¸å®è¦ä¼åç½ç«ãè¿ä¹ä¸ä¸å®å§ï¼è²ä¼¼æ¯ï¼ä½æ¯ï¼å¦æè¢«äººé®åæ¤äºï¼å¦æè¯´èªå·±ä¸ä¼ï¼çç¡®ç¾æ§é¾å½åãæä»¥ï¼æ¬æç¨è¦è®²ä¸è®²å¦ä½åç½ç«ã >æ¨èé 读ï¼[History of the World Wide Web](http://en.wikipedia.org/wiki/History_of_the_World_Wide_Web) é¦å ï¼ä¸ºèªå·±åå¤ä¸ä¸ªæå¡å¨ãè¿ä¸ªè¦æ±ä¼¼ä¹æç¹è¿åï¼ä½ä¸ºä¸ä¸ªæ®éçç©·è¦èå°çç¨åºåï¼åªéæéé¿æ¥è´ä¹°æå¡å¨å¢ï¼æ²¡å ³ç³»ï¼ä¸å¤ä¹°æå¡å¨ä¹è½åç½ç«ï¼å¯ä»¥è´ä¹°äºæå¡ç©ºé´æè èæç©ºé´ï¼è¿ä¸ªå¨ç½ä¸ææï¼å¾å¤ã妿è´ä¹°è¿ä¸ªçéé¿ä¹æ²¡æï¼è¿å¯ä»¥å©ç¨èªå·±ççµèï¼è¿æ»è¯¥æäºï¼ä½ä¸ºæå¡å¨ãæå°±æ¯å©ç¨ä¸å°è£ æubuntuæä½ç³»ç»ç个人çµèä½ä¸ºæ¬æç¨çæ¡ä¾æ¼ç¤ºæå¡å¨ã ç¶åï¼è¦å¨è¿ä¸ªæå¡å¨ä¸åä¸äºç¨åºé ç½®ãä¸äºå¿ å¤çç½ç»é ç½®è¿éå°±ä¸è¯´äºï¼æ¯å¦æç¨çubuntuç³»ç»ï¼é»è®¤æ åµé½æäºãå¦æè¯»è éå°ä¸äºé®é¢ï¼å¯ä»¥æä¸ä¸ï¼ç½ä¸èµæå¤å¤ãå¦å¤çé 置就æ¯pythonå¼åç¯å¢ï¼è¿ä¸ªåºè¯¥ä¹æäºï¼åé¢å·²ç»å¨ç¨äºã æ¥ä¸æ¥ï¼è¦å®è£ ä¸ä¸ªæ¡æ¶ãæ¬æç¨ä¸å¶ä½ç½ç«çæ¡ä¾éç¨tornadoæ¡æ¶ã å¨å®è£ è¿ä¸ªæ¡æ¶ä¹åï¼å äºè§£ä¸äºç¸å ³ç¥è¯ã ##å¼åæ¡æ¶ å¯¹æ¡æ¶ç认è¯ï¼ç±äºå·¥ä½ä¹ æ¯åå·¥ä½å 容çä¸åï¼æå¾å¤§å·®å¼ï¼è¿éå§ä¸æªå[ç»´åºç¾ç§ä¸çä¸ç§å®ä¹](http://zh.wikipedia.org/wiki/%E8%BB%9F%E9%AB%94%E6%A1%86%E6%9E%B6)ï¼ä¹æä»¥è¦ç»åºä¸ä¸ªå®ä¹ï¼æ éæ¯è®©ç宿æäºè§£ï¼ä½æ¯æ¯å¦ç¥éè¿ä¸ªå®ä¹ï¼ä¸æ¯«ä¸å½±ååé¢çå·¥ä½ã >è½¯ä»¶æ¡æ¶ï¼Software frameworkï¼ï¼é常æçæ¯ä¸ºäºå®ç°æä¸ªä¸çæ åæå®æç¹å®åºæ¬ä»»å¡ç软件ç»ä»¶è§èï¼ä¹æä¸ºäºå®ç°æä¸ªè½¯ä»¶ç»ä»¶è§èæ¶ï¼æä¾è§èæè¦æ±ä¹åºç¡åè½ç软件产åã >æ¡æ¶çåè½ç±»ä¼¼äºåºç¡è®¾æ½ï¼ä¸å ·ä½ç软件åºç¨æ å ³ï¼ä½æ¯æä¾å¹¶å®ç°æä¸ºåºç¡çè½¯ä»¶æ¶æåä½ç³»ã软件å¼åè é叏便®ç¹å®çæ¡æ¶å®ç°æ´ä¸ºå¤æçåä¸è¿ç¨åä¸å¡é»è¾ãè¿æ ·ç软件åºç¨å¯ä»¥å¨æ¯æåä¸ç§æ¡æ¶ç软件系ç»ä¸è¿è¡ã >ç®èè¨ä¹ï¼æ¡æ¶å°±æ¯å¶å®ä¸å¥è§èæè è§åï¼ææ³ï¼ï¼å¤§å®¶ï¼ç¨åºåï¼å¨è¯¥è§èæè è§åï¼ææ³ï¼ä¸å·¥ä½ãæè 说就æ¯ä½¿ç¨å«äººæå¥½çèå°ï¼ä½ æ¥å表æ¼ã ææ¯è¾å欢æåä¸å¥çè§£éï¼å«äººæå¥½èå°ï¼ææ¥è¡¨æ¼ãè¿ä¹å°±æ¯è¯´ï¼å¦æå¨å软件å¼åçæ¶åï¼è½å¤åå°å·¥ä½éãå°±åç½ç«æ¥è®²ï¼å ¶å®éè¦åçäºæ å¾å¤ï¼ä½æ¯å¦ææäºå¼åæ¡æ¶ï¼å¾å¤åºå±çäºæ å°±ä¸éè¦åäºï¼é½æåªäºåºå±çäºæ å¢ï¼è¯»è è½å¦åçï¼ï¼ã æé«æå·¥ç¨å¸éè§æ¡æ¶ï¼è®¤ä¸ºèªå·±ç¼åçææ¯çéãè¿æ¹é¢ä¸äºè®ºï¼æ¡æ¶æ¯å¼åä¸å¾æµè¡çä¸è¥¿ï¼æè¿æ¯åºæ§å°è®¤ä¸ºç¨æ¡æ¶æ¥å¼åï¼æ´åç®ã ##pythonæ¡æ¶ æäººè¯´php(ä»ä¹æ¯phpï¼ä¸¥èç说æ³ï¼è¿æ¯å¦å¤ä¸ç§è¯è¨ï¼æ´é«é ç说æ³ï¼æ¯æä¸ªæ´»å¨çæ±è¯æ¼é³ç®ç§°ï¼æ¡æ¶å¤ï¼æä¸å¦è®¤ï¼phpçå¼åæ¡æ¶çç¡®å¾å¤å¾å¤ãä¸è¿ï¼pythonçwebå¼åæ¡æ¶ï¼ä¹è¶³å¤ä½¿ç¨äºï¼å举å ç§å¸¸è§çwebæ¡æ¶ï¼ - Django:è¿æ¯ä¸ä¸ªè¢«å¹¿æ³åºç¨çæ¡æ¶ãå¨ç½ä¸æç´¢ï¼ä¼åç°å¾å¤å ¬å¸å¨æèçæ¶å就说è¦ä¼è¿ä¸ªãæ¡æ¶åªæ¯è¾ å©ï¼çæ£çç¨åºåï¼ç¨ä»ä¹æ¡æ¶ï¼é½åºè¯¥æ¯æ ¹æ®éè¦èæ¥ãå½ç¶ä¸åæ¡æ¶æä¸åçç¹ç¹ï¼éè¦å¦ä¹ 䏿®µæ¶é´ã - Flaskï¼ä¸ä¸ªç¨Pythonç¼åçè½»é级Webåºç¨æ¡æ¶ãåºäºWerkzeug WSGIå·¥å ·ç®±åJinja2模æ¿å¼æã - Web2pyï¼æ¯ä¸ä¸ªä¸ºPythonè¯è¨æä¾çå ¨åè½Webåºç¨æ¡æ¶ï¼æ¨å¨ææ·å¿«éçå¼åWebåºç¨ï¼å ·æå¿«éãå®å ¨ä»¥åå¯ç§»æ¤çæ°æ®åºé©±å¨çåºç¨ï¼å ¼å®¹Google App Engineã - Bottle: å¾®åPython Webæ¡æ¶ï¼éµå¾ªWSGIï¼è¯´å¾®åï¼æ¯å 为å®åªæä¸ä¸ªæä»¶ï¼é¤Pythonæ ååºå¤ï¼å®ä¸ä¾èµäºä»»ä½ç¬¬ä¸æ¹æ¨¡åã - Tornadoï¼å ¨ç§°æ¯Tornado Web Serverï¼ä»ååä¸çå°±å¯ç¥éå®å¯ä»¥ç¨ä½Webæå¡å¨ï¼ä½åæ¶å®ä¹æ¯ä¸ä¸ªPython Webçå¼åæ¡æ¶ãæåæ¯å¨FriendFeedå ¬å¸çç½ç«ä¸ä½¿ç¨ï¼FaceBookæ¶è´äºä¹åä¾¿å¼æºäºåºæ¥ã - webpy: è½»é级çPython Webæ¡æ¶ãwebpyç设计çå¿µåæ±ç²¾ç®ï¼Keep it simple and powerfulï¼ï¼æºç å¾ç®çï¼åªæä¾ä¸ä¸ªæ¡æ¶æå¿ é¡»çä¸è¥¿ï¼ä¸ä¾èµå¤§éçç¬¬ä¸æ¹æ¨¡åï¼å®æ²¡æURLè·¯ç±ãæ²¡ææ¨¡æ¿ä¹æ²¡ææ°æ®åºç访é®ã 说æï¼ä»¥ä¸ä¿¡æ¯éèªï¼http://blog.jobbole.com/72306/ ï¼è¿ç¯æç« ä¸è¿æå«çæ¡æ¶ï¼ç±äºä¸æ¯webæ¡æ¶ï¼ææ²¡æéæï¼æå ´è¶£çå»é 读ã ##Tornado æ¬æç¨ä¸å°éæ©ä½¿ç¨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](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/) æå¨èªå·±çµèä¸ï¼æ¯æç®å使ç¨çæå¡å¨ï¼ï¼ç¨ä¸é¢æ¹æ³å®è£ ï¼åªéè¦ä¸å¥è¯å³å¯ï¼ pip install tornado è¿æ¯å 为Tornadoå·²ç»åå ¥PyPIï¼å æ¤å¯ä»¥éè¿ pip æè easy_install æ¥å®è£ ã 妿ä¸ç¨è¿ç§æ¹å¼å®è£ ï¼ä¸é¢ç页é¢ä¸æå¯ä»¥ä¾çå®ä¸è½½çææ°æºç çæ¬åå®è£ æ¹å¼ï¼[https://pypi.python.org/pypi/tornado/](https://pypi.python.org/pypi/tornado/) æ¤å¤ï¼å¨githubä¸ä¹ææç®¡ï¼çå®å¯ä»¥éè¿ä¸è¿°é¡µé¢è¿å ¥å°githubçæºç ã ææ²¡æå¨windowsæä½ç³»ç»ä¸å®è£ è¿è¿ä¸ªä¸è¥¿ï¼ä¸è¿ï¼å¨å®æ¹ç½ç«ä¸æä¸å¥è¯ï¼å¯è½å¨åè¯è¯»è ä¸äºä¿¡æ¯ï¼ >Tornado will also run on Windows, although this configuration is not officially supported and is recommended only for development use. ç¹å«å»ºè®®ï¼å¨çæ£çå·¥ç¨ä¸ï¼ç½ç«çæå¡å¨è¿æ¯ç¨Linuxæ¯è¾å¥½ï¼ä½ æå¾ï¼åï¼ï¼ã ##ææ¯åå¤ é¤äºå好ä¸è¿°åå¤ä¹å¤ï¼è¿è¦æç¹ææ¯åå¤ï¼ - HTML - CSS - JavaScript æä»¬å¨åé¢å®ä¾ä¸ï¼ä¸ä¼æå¤ªå¤æççé¢åJavaScript(JS)æä½ï¼æä»¥ï¼åªéè¦åºæ¬ç¥è¯å³å¯ã ------ [æ»ç®å½](./index.md) | [ä¸èï¼å®æ-å¼](./300.md) | [ä¸èï¼åæHello](./302.md) å¦æä½ è®¤ä¸ºæå¿ è¦æèµæï¼è¯·éè¿æ¯ä»å®ï¼**[email protected]**,ä¸èææ¿ã