豆瓣16大開源神庫,Python方向必備!

NoSQL Python 豆瓣網 編程語言 Memcached 交大全棧智能工程師 2018-12-03

Python開發語言迅速進入人們的視線,可以說離不開人工智能的推動,大家都在說python有強大的庫,開源的庫,今天就以豆瓣為例,嘮嘮python那些神奇的庫。

豆瓣16大開源神庫,Python方向必備!

豆瓣一直是中國Python領域的領軍企業, 同時也是開源事業的熱心參與者。

總結了一下豆瓣16大開源庫,拿走不謝!

1. pymesos

豆瓣16大開源神庫,Python方向必備!

Mesos調度器和執行者的純Python實現

2. DPark

豆瓣16大開源神庫,Python方向必備!

Dpark是國內豆瓣公司根據Spark進行的克隆版本的實現

DPark 是一個類似MapReduce 的基於Mesos(Apache 下的一個集群管理器,提供了有效的、跨分佈式應用或框架的資源隔離和共享等功能)的集群並行計算框架(Cluster Computing Framework),DPark 是Spark 的Python克隆版本,是一個Python 實現的分佈式計算框架,可以非常方便地實現大規模數據處理和低延時的迭代計算。該計算框架類似於MapReduce,但是比其更靈活,可以用Python 非常方便地進行分佈式計算,並且提供了更多的功能,以便更好地進行迭代式計算。DPark 由國內的豆瓣公司開發實現和負責維護,據豆瓣公司的描述,目前豆瓣公司內部的絕大多數數據分析都使用DPark 完成,整個項目也正趨於完善。

3. Paracel

帶有參數服務器的分佈式訓練框架, 為很多機器學習問題而設計。

Paracel是一個基於參數服務器通信模型的分佈式訓練框架。參數服務器可以被理解成一個全局分佈式的key-value存儲,用來存儲待訓練的模型。同時,參數服務器還能通過用戶定義的update函數進行分佈式計算,這時它與mapreduce系統中的reducer很類似。

4. code

豆瓣16大開源神庫,Python方向必備!

豆瓣內部的代碼管理及部署平臺, 可以理解為豆瓣內部的Douban App Engine.

5. greenify

使得使用了c代碼的Python模塊兼容gevent

6. douban-quixote

豆瓣版的quixote, 一個Python的Web開發框架

Quixote的優點:簡單,Quxiote的全部代碼量為7000行左右,而且包含了大量的註釋,如果去掉註釋,則只有大約2500行代碼。這也是我選擇Quixote來學習Python的原因,因為你能容易通過閱讀代碼看到Quxiote做了什麼。

高效,這一方面得益於Python語言本身的特點和Quxiote簡單的架構,另一方面得益於用PTL模板。

安全,這也得益於Quxiote的簡單,使得我們能很好的控制框架,並且它提供了一些HTML輸出方法,保證了HTML輸出的安全。

7. beansdb

豆瓣16大開源神庫,Python方向必備!

一個分佈式鍵值對存儲系統.

Beansdb的CAP特點表現為:

1)分佈式的,伸縮性比較好(P)

2)最終一致的(C),可能出現短時間內的數據不一致。

3)高可用的(A),部分節點出現故障不影響服務。

Beansdb在豆瓣內部有著廣泛的使用,比如圖片文件、小媒體文件、profile、properties等等。Beansdb不像GFS等分佈式存儲系統,一般不用於存儲百兆以上單位的大數據。

8. misaka

一個markdown解析庫的Python綁定

9. sina

一個git SmartHTTP服務器的WSGI實現

10. libmc

豆瓣16大開源神庫,Python方向必備!

一個輕量級的memcached客戶端

11. memkeys

豆瓣16大開源神庫,Python方向必備!

memkeys是tumblr開源的類似top的工具,可用於實時查看memcached的key使用情況。

12. brownant

豆瓣16大開源神庫,Python方向必備!

一個輕量級的網絡數據抽取框架

13. twemproxy

豆瓣16大開源神庫,Python方向必備!

Twemproxy 也叫 nutcraker。是 Twtter 開源的一個 Redis 和 Memcache 代理服務器,主要用於管理 Redis 和 Memcached 集群,減少與Cache 服務器直接連接的數量。

14. linguist

編程語言監測工具

15. CaoE

當父進程死了, 殺死所有的子進程

16. pygit2

Pygit2是對libgit2的Python封裝,提過簡潔的接口訪問對象中的各種屬性,執行對倉庫的各種操作。libgit2是Git的共享程序庫,相對於作為一個獨立程序應用的Git,libgit2去掉了其中複雜的優化和非核心的功能,更簡單,更純粹。

看完這個列表, 頓時有一種豆瓣把開源產品都Python融化了的感覺。 有沒有心曠神怡,如獲至寶呢?

這裡更多幹貨,跟多趣事等你來(關注:交大數字研究院)

相關推薦

推薦中...