您好,登錄后才能下訂單哦!
tornado簡介
python不僅可以用來做系統或者業務層面的開發,還可以做跟web相關的項目,目前有3個比較廣泛流行的python開源web框架,有web.py、tornado、django。web.py http://webpy.org/ 它相對于其他兩個框架來講比較精簡上手也比較快,當然了精簡的另外一方面就是功能比較簡單。tornado http://www.tornadoweb.org/ 網上流傳作者的靈感來自于web.py,tornado跟其他框架相比,經常說的一個特性就是非阻塞服務。最后一個常見的django我們會在另外的文章單獨再介紹,個人感覺django https://www.djangoproject.com/ 貌似更適合用來做web的前后端融合開發,但django使用起來個人覺得相對比較復雜,需要理解的概念東西比較多,tornado則相對來講比較適合做web的后端服務,而且使用起來也簡單。
tornado使用案例
什么時候我們會用到python的web框架呢?在回答這個問題之前我們先了解一下現狀,我們知道當前有2個很成熟,穩定,而且使用面也很廣的開源web服務端,apache和nginx,他們都能內嵌或者支持php,lua等動態擴展,可以很好地完成大部分項目對web的需求功能。apache,nginx這些web服務端,它們擅長的地方都是提供http、https或者代理服務,如果請求的連接需要后臺長期運行的比如websocket服務,用起來就不太好使。現在微信的小程序都很流行,在微信的小程序里面只有2種網絡通信方式可以用,一種是普通的http請求回復型的斷連接,一種是支持長連接的websocket,假如需要使用小程序來實現一個長連接的功能,那么websocket則是不二之選。
下面我們通過一個websocket服務器聊天室作為例子,演示tornado框架的簡單使用。
先安裝tornado
編輯main.py文件內容如下:
運行main.py文件
我們再使用一個在線的websocket測試工具 http://www.websocket.org/echo.html 連接到我們的websocket服務器,記得我們使用的是普通的websocket(ws),所以務必訪問http的地址,如果訪問了https默認是用wss(SSL的websocket訪問是不行的),如下截圖所示:
一切正常的話,會提示CONNECTED代表連接websocket服務器成功,這個時候我們調用api接口發送一個消息。
我們可以看到websocket測試工具連接的websocket成功地收到我們發送的消息
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。