Python的5個頂級異步框架-創(chuàng)新互聯(lián)

Python在3.4引入了 asyncio 庫,3.6新增了關(guān)鍵字 async和await,此后,異步框架迅速發(fā)展了起來,性能上能和Node.js比肩,除非是CPU密集型任務(wù),否則沒有理由不適用異步框架。

目前成都創(chuàng)新互聯(lián)已為1000+的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機、網(wǎng)站托管維護、企業(yè)網(wǎng)站設(shè)計、尼金平網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

如果你是Web開發(fā)者,現(xiàn)在異步Web框架上有了更多選擇!

1、Tornado

Tornado 根本不是什么新框架,它最初是由FriendFeed(后被Facebook收購)在2009年發(fā)布。從一開始就提供有異步編程的功能。

Tornado 不僅僅是Web框架,同時它內(nèi)置了很多異步模塊,可用于自己構(gòu)建異步應(yīng)用。這些模塊包括:

  • 協(xié)同程序和其他原語(tornado.gen,tornado.locks,tornado.queues等)
  • 網(wǎng)絡(luò)模塊(tornado.ioloop,tornado.iostream)
  • 異步服務(wù)器和客戶端(tornado.httpserver,httpclient,等)

通過這些模塊,Tornado 構(gòu)建了自己的異步Web框架模塊。

import tornado.ioloopimport tornado.webclass MainHandler(tornado.web.RequestHandler):    def get(self):        self.write("Hello, world")def make_app():    return tornado.web.Application([        (r"/", MainHandler),    ])if __name__ == "__main__":    app = make_app()    app.listen(8888)    tornado.ioloop.IOLoop.current().start()

Tornado在Python社區(qū)中擁有很多追隨者,并且經(jīng)驗豐富的架構(gòu)師使用它們來構(gòu)建功能強大的系統(tǒng)。這個框架長期以來一直在解決并發(fā)問題,但是由于它不支持WSGI標準(大部分Python庫仍在同步中),因此尚未成為主流。

國內(nèi)據(jù)說知乎是基于Torando構(gòu)建的。

2、 Snaic

Sanic是一個誕生有3年的框架:它只支持3.6以上Python版本,支持通用的async / await語法,開箱即用,因此你無需閱讀大量文檔就可以寫出你的一個HTTP 處理器。

除了async關(guān)鍵字之外,語法上和 flask 基于沒差別。

from sanic import Sanicfrom sanic.response import jsonapp = Sanic()@app.route("/")async def test(request):    return json({"hello": "world"})if __name__ == "__main__":    app.run(host="0.0.0.0", port=8000)

Sanic可以說是Python世界中最流行和最受歡迎的異步框架。它具有你項目中需要的所有功能:路由,中間件,Cookie,版本控制,藍圖,基于類的視圖,靜態(tài)文件,流,sockets,此外你還可以集成模板,數(shù)據(jù)庫驅(qū)動,文件I / O,隊列等等。

3、Vibora

Vibora和Sanic非常像,致力于成為最快的Python Web服務(wù)器。他們網(wǎng)站首頁有一個框架比較圖:

Python的5個頂級異步框架

網(wǎng)頁名稱:Python的5個頂級異步框架-創(chuàng)新互聯(lián)
分享URL:http://muchs.cn/article26/dddocg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計公司、商城網(wǎng)站、定制開發(fā)、網(wǎng)站收錄、服務(wù)器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)