Socket屬于JAVA語言。Java和socket是用一層封裝的,底層的一些功能可能不完全可用,但是足夠滿足平時的需求了。Pythonssocket基本是原生接口,操作系統基本支持。您甚至可以使用原始套接字來捕獲底層包。如果只是普通的C/S結構,現在很少直接使用socket,所以實現自定義協議很麻煩,新手可以t處理協議設計的問題,比如消息如何分片,如何匹配,如何解析,如何實現未來協議的可擴展性和多版本兼容等等。一般都用常用的協議,最常用的是HTTP,它有很多優點。首先,Web后端已經非常成熟。第二,各種語言的HTTP包使用起來非常方便,很容易擴展到B/S結構,使用AJAX實現Web應用。WebSocket可用于兩個方向的推送。另外,JSON-RPC也是一個非常簡單的RPC協議。除了這些通用協議,MySQL、Redis等常用協議也有相應的軟件包可以使用。現在一般需要自己調用
1Django
Django是一個由Python編寫的開源Web應用框架。采用MTV的框架模式,即modelM、templateT、viewV,最初是為了管理勞倫斯出版集團旗下的一些新聞類網站而開發的,也就是CMS(內容管理系統)軟件。與其他框架相比,Django有一個獨特的特性,它支持orm,并將數據庫的操作封裝到python中,對于需要適用于各種數據庫的應用來說,這是一個很好的特性。不過這個特性已經被其他庫sqlalchemy完成了。
2燒瓶
Flask是用Python編寫的輕量級Web應用框架。它的WSGI工具箱使用Werkzeug,它的模板引擎使用Jinja2。Flask使用BSD授權。
燒瓶也被稱為"微觀框架和因為它使用一個簡單的核心,并使用擴展來添加其他功能。默認情況下,Flask沒有數據庫和表單驗證工具。
Flask很輕,可以用很小的成本開發一個簡單的網站。非常適合初學者學習。學完Flask框架,可以考慮學習插件的使用。例如,使用WTFormFlask-WTForm驗證表單數據,使用SQLAlchemyFlask-SQLAlche。我來控制你的數據庫。
3
Tornado是Web服務器軟件的開源版本。Tornado與目前主流的Web服務器框架(包括大部分Python框架)明顯不同:它是一個非阻塞的服務器,速度相當快。
由于其非阻塞模式和epoll的使用,Tornado每秒可以處理數千個連接,因此Tornado是實時Web服務的理想框架。但是Tornado相比很多框架已經被甩在后面了,Django已經超越了,其他框架就更不用說了。只能說純python開發的Tornado的性能是cython開發的其他框架無法相比的。
四
是一個Pythonweb框架,簡單而強大。就是開放,不管有什么用,沒有限制。而且它相當小,應該屬于輕量級的web框架。但事實并非如此。;t有很強的影響力,使用起來非常簡單直接。在實際應用中,它更有學術價值,因為你可以看到更多的web應用底層,這可以不要在今天學習。;標準普爾良好的抽象"web框架:)
5Aiohttp
客戶端和服務器端的高性能異步web框架也支持web套接字。
6Sanic
類似于flask,支持異步。
7Vibora
旨在成為最快的pythonweb框架。vibora的高性能依賴于cython實現的uvloop和cython實現的http_parser的異步框架,再加上cython構建的一些web組件,比如模板、user-route等。它仍處于測試階段。
8瓶
Bottle是一個遵循WSGI的簡單高效的微型pythonWeb框架。說微縮是因為它只有一個文件,除了Python標準庫,它不依賴任何第三方模塊。
9獵鷹
Falcon是一個用于構建云API的高性能Python框架,它鼓勵使用REST架構風格,以最少的努力做盡可能多的事情。
10weppy
性能優于flask的全棧web框架