91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python中Faust庫的詳細介紹

發布時間:2021-09-09 07:54:44 來源:億速云 閱讀:534 作者:chen 欄目:開發技術

本篇內容介紹了“Python中Faust庫的詳細介紹”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

目錄
  • Faust是一個流處理庫

    • 將kafka流中的思想移植到Python中

  • agent是一個async def的函數,因此它還可以異步執行其他操作

    • 使用Kafka topic作為“預寫日志”

      • Faust支持任何類型的流數據

        • Faust是靜態類型的

      • Faust簡介

        • 高可用性

        • 分布式的

        • 快速

        • 靈活性

          • 安裝

          • 綁定

          • 下載并從源文件中安裝

          • 使用開發版本

          • 常見問題

      Python中Faust庫的詳細介紹

      Faust是一個流處理庫

      將kafka流中的思想移植到Python中

      它被用于Robinhood去構建高性能的分布式系統和實時數據通道,每天處理數十億的數據。

      Faust同時提供流處理和事件處理同類型的工具分享例如:Kafka Streams, Apache Spark/Storm/Samza/Flink

      它不需要使用一個DSL,僅需要用到Python!這意味著你在做流處理的時候可以使用所有你喜歡的Python庫:

      NumPy, PyTorch, Pandas, NLTK, Django, Flask, SQLAlchemy等等。

      由于需要使用新的async/await語法和變量類型注釋方法,Faust需要使用Python3.6以上的版本。

      這里有一個處理輸入命令流的示例:

      Python中Faust庫的詳細介紹

      這個agent裝飾器定義了一個“流處理器”,它本質上是一個Kafka topic,并且可以對接收到的每個事件做一些處理。

      agent是一個async def的函數,因此它還可以異步執行其他操作

      如web請求。

      這個系統可以持久化狀態,執行方式類似于數據庫。表被命名成分布式的key/value儲存,你可以使用常規的Python字典來做這件事。

      在每臺機器上的本地用c++編寫的超快嵌入式數據庫(被稱為RocksDB)存儲表。

      表還可以存儲可選的“窗口”聚合計數,以便跟蹤“前一天的單擊次數”或“前一個小時的單擊次數”。與Kafka流一樣,我們支持滾動、跳躍和滑動時間窗口,舊窗口可以過期以阻止數據填充。

      為了提高可靠性

      使用Kafka topic作為“預寫日志”

      當一個密鑰被更改時,我們將其發布到更新的日志上。備用節點使用這個更新日志來保存數據的精確副本,并在任何節點發生故障時支持立即恢復。

      對于用戶來說,表只是一個字典,但是數據在重新啟動和跨節點復制之間存在,所以在故障發生時其他節點可以自動接管。

      您可以通過URL統計頁面瀏覽數量:

      Python中Faust庫的詳細介紹

      發送到Kafka topic的數據是分區的,這意味著點擊數將用URL的這種方式進行分片。因此,同一個URL的每個計數都會立刻被傳遞給同一個Faust worker實例。

      Faust支持任何類型的流數據

      字節、Unicode和序列化結構,同時也支持使用現代Python語法的“模型”來描述流中的keys和value是如何被序列化的。

      Python中Faust庫的詳細介紹

      Faust是靜態類型的

      使用mypy類型檢查器,所以您在編寫應用程序時可以充分利用靜態類型的優勢。

      Faust源代碼很小,組織良好,是學習Kafka流實現的好資源。

      在引言頁學習更多關于Faust的知識.jpg

      去閱讀更多關于Faust,系統請求,安裝指導,論壇資源等等,或者直接訪問快速開始的教程。在一個編寫流處理的應用中去查看關于Faust應用,然后通過使用者手冊深入探討。深層次的信息都根據不同主題在這個手冊中進行說明

      Faust簡介

      Faust非常容易使用。在學習其他的流處理方法時,你總是需要從一個復雜的hello-world工程和相應的基礎要求開始學習。Faust僅僅需要Kafka,剩下的就是只需要Python,如果你知道Python的話你就可以直接使用Faust去做流處理的工作了,并且它可以整合和他相關的一切。

      這兒有一個簡單的應用程序你可以做:源代碼是Python的

      Python中Faust庫的詳細介紹

      您可能會被async和await這兩個關鍵字嚇到,但是您在使用Faust時不需要知道asyncio是如何工作的:只要模仿這些例子就可以得到您想要的結果。

      示例應用程序啟動兩個任務:一個是處理流,另一個是向流發送事件的后臺線程。在實際的應用程序中,您的系統將向Kafka topic發布事件,您的處理器可以從Kafka topic獲取事件信息,并且只需要后臺線程將數據輸入到我們的示例中。

      高可用性

      Faust是高度可用的,并且可以在網絡問題和服務器崩潰中生存下來。在節點失敗的情況下,它可以自動恢復,并且表將接管備用節點。

      分布式的

      根據您的應用程序的需要啟動更多實例。

      快速

      一個單內核的Faust worker實例已經可以每秒處理數萬個事件,我們有理由相信,一旦我們能夠支持一個更優化的Kafka客戶端,吞吐量就會增加。

      靈活性

      Faust就是Python,而流是一個無限的異步迭代器。如果您知道如何使用Python,那么您已經知道如何使用Faust,它可以與您喜歡的Python庫一起使用,比如Django、Flask、SQLAlchemy、NTLK、NumPy、Scikit、TensorFlow等等。最后,如果你的時間不是很緊張,并且又想快速的提高,最重要的是不怕吃苦,建議你可以聯系維:762459510 ,那個真的很不錯,很多人進步都很快,需要你不怕吃苦哦!大家可以去添加上看一下~

      安裝

      您可以通過Python包或從源文件中安裝Faust

      使用pip安裝它:

      Python中Faust庫的詳細介紹

      綁定

      Faust還定義了一組setuptools擴展,可以用來安裝Faust,并且有一個給定特性的依賴關系。

      您可以在您的需求中或在pip命令行中使用方括號來指定它們。使用逗號分隔多個包:

      Python中Faust庫的詳細介紹

      以下的綁定均是有效的:

      商店

      Python中Faust庫的詳細介紹

      最優化

      Python中Faust庫的詳細介紹

      傳感器

      Python中Faust庫的詳細介紹

      事件循環

      Python中Faust庫的詳細介紹

      調試

      Python中Faust庫的詳細介紹

      下載并從源文件中安裝

      您可以這樣安裝它:

      Python中Faust庫的詳細介紹

      如果當前沒有使用virtualenv,則必須以特權用戶的身份執行最后一個命令。

      使用開發版本

      您可以使用以下pip命令安裝Faust的最新版本:

      Python中Faust庫的詳細介紹

      常見問題

      Faust可以在Django/Flask/etc上使用嗎?

      使用gevent

      這種方法適用于任何可以與gevent一起工作的阻塞Python庫。

      使用gevent需要您安裝aiogevent模塊,您可以將其作為Faust的包進行安裝:

      Python中Faust庫的詳細介紹

      然后要真正的使用gevent作為事件循環,您要么在faust程序中使用-L <faust --loop>

      命令:

      Python中Faust庫的詳細介紹

      要么在你腳本的前面加入import mode.loop.gevent

      Python中Faust庫的詳細介紹

      記住:非常重要的一點是,它位于模塊的最頂端,并且在導入庫之前執行。

      使用eventlet

      這種方法適用于任何可以使用eventlet的阻塞Python庫。

      使用eventlet需要您安裝aioeventlet模塊,您可以將其安裝為與Faust一起的捆綁包。

      Python中Faust庫的詳細介紹

      然后要實際使用eventlet作為事件循環,您要么在faust程序中使用-L <faust --loop>

      命令:

      Python中Faust庫的詳細介紹

      要么在你腳本的前面加入import mode.loop.gevent

      Python中Faust庫的詳細介紹

      警告

      非常重要的是,它位于模塊的最頂端,并且在導入庫之前執行。

      Faust可以在Tornado上使用嗎?

      可以!使用tornado.platform.asyncio

      鏈接:http://www.tornadoweb.org/en/stable/asyncio.html

      Faust可以在Twisted上使用嗎?

      可以!使用asyncio反應器實現:

      鏈接:https://twistedmatrix.com/documents/17.1.0/api/twisted.internet.asyncioreactor.html

      是否支持Python3.5或者更早的版本?

      目前還沒有支持Python 3.5的計劃,但是歡迎您為這個項目做出貢獻。

      以下是實現這一目標所需的一些步驟

      • 源代碼轉換以重寫變量注釋到注釋

      示例,代碼:

      Python中Faust庫的詳細介紹

      • 重寫異步函數的源代碼轉換

      示例,代碼:

      Python中Faust庫的詳細介紹

      必須重寫:

      Python中Faust庫的詳細介紹

      “Python中Faust庫的詳細介紹”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

      向AI問一下細節

      免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

      AI

      清水县| 黄梅县| 芜湖市| 海盐县| 张家界市| 孟州市| 襄汾县| 南涧| 偃师市| 出国| 新邵县| 舟曲县| 葫芦岛市| 陆良县| 鄂尔多斯市| 阳信县| 尼玛县| 万全县| 濉溪县| 昌邑市| 泉州市| 梓潼县| 且末县| 横山县| 合水县| 庆阳市| 赤壁市| 铅山县| 新绛县| 赫章县| 大悟县| 崇礼县| 涪陵区| 全椒县| 泾川县| 无棣县| 通渭县| 文水县| 丰原市| 崇阳县| 瓦房店市|