日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

异步IO驱动

發布時間:2023/11/28 生活经验 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 异步IO驱动 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文鏈接:https://yq.aliyun.com/articles/651998
      <div class="show-content-free"><blockquote>

轉一篇關于Asyncio的資源帖。基本涵蓋了基于Asyncio的Python生態,非常適合用Python編寫高性能服務。可以和之前轉的駒神的文章結合看。如果想讓Python技能更上一層樓,強烈建議好好學習下這個資源列表!

Awesome-Asyncio-CN

Awesome-Asyncio-CN

Awesome-Asyncio-CN Github 網址

Python Asyncio 精選資源列表,囊括了網絡框架,庫,軟件等資源

Awesome-asyncio 是 Timo Furrer 發起并維護的 Python Asyncio 資源列表。本項目是其中文版,在這里,收集了大量的 Asyncio 的最棒、最新的資源,供大家探索 Python 異步編程世界。

Python 3.4 引入了 Asyncio 模塊作為標準庫,通過協程、多路 I/O 訪問 Socket 和其他資源來編寫單線程并發代碼,并在網絡客戶端與服務器上運行。Asyncio 內置了對異步 I/O 的支持,其編程模型類似于消息循環,從 Asyncio 模塊可以直接獲取 EventLoop 引用,再把需要執行的協程放到 EventLoop 中執行,就實現了異步 I/O。Asyncio 是由 Python 之父 Guido 領導的項目,該項目被命名為 Tulip(郁金香)。

Asyncio 并不是新出現的黑科技,一些社區有名的第三庫如 Twisted、gevent 早就推出了異步編程模型。不過,自從 2016 年 3 月,Python 3.4 推出以后,這兩年來,Asyncio 變得越來越流行,并且特別受到 Python 社區追捧。

貢獻代碼

歡迎大家為列表貢獻高質量的新資源,提交 PR 時請參照以下要求

  • 注明推薦理由

  • 確保項目相對活躍

目錄

  • Web 框架

  • 消息隊列

  • 數據庫驅動

  • 網絡

  • 測試

  • 備選事件循環

  • 并行

  • 其他

  • 文獻

  • 演講

Web框架

構建 Web 應用的庫

  • aiohttp - 支持 Asyncio (PEP-3156) 的 HTTP 客戶端/服務端網絡庫。

  • sanic - Python 3.5+ Web 服務器,主打速度與性能。

  • Quart - 支持 Asyncio 的 Web 微框架,使用與 Flask 相同的 API。

  • Kyoukai - 使用 Asyncio 編寫的 Python3.5+ 完全異步 Web 框架。

  • cirrina - 基于 aiohttp 的異步 Web 框架。

  • autobahn - 支持 Asyncio 與 Twisted 的 WebSocket 及 WAMP,用于客戶端與服務端。

  • websockets - Python 構建的 WebSocket 客戶端/服務端的庫,致力于簡潔、正確地編寫代碼。

  • Tornado - 高性能 Web 框架以及異步網絡庫。

  • Japronto! - 基于 uvloop 和 picohttpparse 構建的實驗性 HTTP 工具箱。

消息隊列

使用消息隊列執行應用的庫

  • aioamqp - 使用 Asyncio 異步執行 AMQP。

  • aiozmq - 集成了 Asyncio (pep 3156) 的 ZeroMQ。

  • crossbar - Crossbar.io 是提供分布式和微服務應用的網絡平臺。

數據庫驅動

數據庫的驅動庫

  • asyncpg - 快速訪問 PostgreSQL 數據庫客戶端的異步驅動。

  • asyncpgsa - 提供 Sqlalchemy Core 支持的 Asyncpg。

  • aiopg - 訪問 PostgreSQL 數據庫的異步驅動。

  • aiomysql - 訪問 MySQL 數據庫的異步驅動。

  • aioodbc - 訪問 ODBC 數據庫的異步驅動。

  • motor - 訪問 MongoDB 數據庫的異步驅動。

  • aioredis - aio-libs 提供的異步 Redis 客戶端 (PEP 3156)。

  • asyncio-redis - 訪問 Redis 客戶端 (PEP 3156)的異步驅動。

  • aiocouchdb - 基于 aiohttp (Asyncio) 構建的 CouchDB 客戶端。

  • aioinflux - 基于 aiohttp 構建的 InfluxDB 客戶端。

  • aioes - 兼容 elasticsearch 的 Asyncio 驅動。

  • peewee-async - 基于 peewee 和 aiopg 實現的 ORM。

  • GINO - 基于 SQLAlchemy Core 和 asyncpg 方言的輕量級 Python 異步 ORM。

  • aiocache - 支持多個后端 (Memory、Redis 和 Memcached) 的 Asyncio 緩存管理器。

  • aiomcache - 訪問 Memcached 的 Asyncio(PEP 3156) 驅動庫。

網絡

網絡通訊庫

  • AsyncSSH - 提供執行 SSHv2 協議的異步客戶端/服務端。

  • asks - 與 requests 接口相似的異步 HTTP 庫。

  • aioftp - 基于 Asyncio 的 ftp 服務。

  • aiodns - 簡單的 Asyncio DNS 服務解析器。

  • websockets 構建于 Asyncio 之上的異步 websockets 庫。

測試

測試 Asyncio 應用程序的庫

  • aiomock - 支持異步的 Python mock 庫。

  • asynctest - 一個增強標準 unittest 包的測試庫。

  • pytest-asyncio - 支持 Asyncio 的 Pytest 庫。

  • aioresponses - 一個適用于 aiohttp 的模擬請求庫。

備選事件循環

備選的 Asyncio 循環庫

  • uvloop - 基于 libuv 實現的 Asyncio 事件循環庫。

  • curio - 協程并發庫。

  • trio - 人性化的,Pythonic 的異步 IO 庫。

并行

并行異步編程的庫

  • aioprocessing - 結合 multiprocessing 與 Asyncio 的進程庫,支持 Python3.4+。

  • aiomultiprocess - 進一步提升異步性能的多進程庫。

其他

未歸類的優秀 Asnycio 庫

  • aiofiles - 基于 Asyncio,支持文件異步操作。

  • aiodebug - 用于監控和測試 Asyncio 程序的微型庫。

  • aiorun - 提供處理通用 Asyncio 樣板,啟動和關閉事件驅動的 run 函數。

  • aiozipkin - 使用 zipkin 的分布式 Asyncio 追蹤測量儀。

  • faust - 純 Python 的流處理庫,用于處理流數據和事件。

  • paco - 協程驅動的異步編程的工具庫 (Python3.4+)。

文獻

關于 Asyncio 的文檔、博客等文獻

  • Asyncio 官方文檔 - 介紹了異步 I/O、事件循環、協程及任務等內容。

  • Asyncio 精編簡介 - 生成器,協程,原生協程及 async/await。

  • 異步窺探 - 非常好的一篇文章,列出了哪些用例應該使用 Asyncio ,哪些用例無需使用 Asyncio。

  • 異步 Python - 介紹如何進行 Python 異步編程。

  • 用 Asyncio 進行 Python 開發 - 介紹異步編程的開發,從簡單示例說起,一直到 URL 爬取。

  • Python Aiohttp 的測試極限 - 使用 Python Aiohttp 進行百萬量級的并發測試。

演講

關于 Asyncio 的主題演講

  • Topics of Interest (Python Asyncio) - David Beazley 的主題演講。

  • Python Asynchronous I/O Walkthrough - Philip Guo 的主題演講。

  • Thinking Outside the GIL with AsyncIO and Multiprocessing - John Reese 的主題演講

  • Asynchronous Python for the Complete Beginner - Miguel Grinberg 的主題演講

</div>                                    </div></div>

總結

以上是生活随笔為你收集整理的异步IO驱动的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。