tornado使用教程 有哪些關于tornado的入門教程?
有哪些關于tornado的入門教程?您好,本人具有多年python開發(fā)經(jīng)驗,希望能和大家一起探討,共同進步!首先說下tornado,它是一款由python開發(fā)的web框架,和所有主流的web開發(fā)框架不
有哪些關于tornado的入門教程?
您好,本人具有多年python開發(fā)經(jīng)驗,希望能和大家一起探討,共同進步!
首先說下tornado,它是一款由python開發(fā)的web框架,和所有主流的web開發(fā)框架不同的是,它對于請求的處理都是異步的,其它的框架(例如flask和django)都需要設置或者編程來實現(xiàn)高并發(fā),并非天然支持,而tornado是非阻塞式服務器,所以它處理請求的速度非常之快!??!是高并發(fā)量網(wǎng)站的首選!
這完全的得力于其非阻塞方式和對epoll的應用。
那么那些書籍適合入門tornado呢?
現(xiàn)在tornado官方目前為止,只編寫了一本有關的書籍《introduce to tornado》,國內(nèi)貌似還沒有翻譯的版本,不過您可以找下圖靈叢書中的tornado書籍,應該有,還有一本叫做《tornado/VxWorks入門與提高》。
剩下的就是網(wǎng)上大量的博客和文章,另外菜鳥教程網(wǎng)站也是一個不錯的學習資料,最后提醒一下還是要多看源碼哦,這樣對于學習會有很大幫助!
總的來說,tornado還是對于有一定web開發(fā)經(jīng)驗和python經(jīng)驗的人比較適合!
希望我的回答能夠幫助到您祝您學習進步,工作順利!??!
如何理解Tornado中的協(xié)程模塊?
用tornado畢竟是可以做異步request的, 如果你的數(shù)據(jù)庫真的很慢, 不如再開其他的tornado做block數(shù)據(jù)庫操作(你可以用tornado wsgi多線程/多進程形式部署, 也可以用django, flask等), 然后通過API的形式將數(shù)據(jù)庫返回過來. 相當于用tornado給你的數(shù)據(jù)庫操作web化(寫內(nèi)部數(shù)據(jù)API)這個是我剛才剛剛想到的, 原理就是用一些獨立的進程去做費時的數(shù)據(jù)庫操作, 這樣你的主web tornado進程就可以異步暢通, 增加吞吐量. 這樣就不需要為各個數(shù)據(jù)庫寫驅(qū)動了.如果數(shù)據(jù)庫在不同的機器上, 那么可以考慮將這些獨立的數(shù)據(jù)操作tornado進程在數(shù)據(jù)庫機器上部署. 使用wsgi多線程/多進程的好處是查詢可以同時進行, 當然也可能卡死數(shù)據(jù)庫. 使用tornado自己的單進程異步部署的時候, tornado還可以充當一個數(shù)據(jù)庫操作隊列的作用.