1. 程式人生 > >python中的gevent概況詳解

python中的gevent概況詳解

gevent概況
gevent是一個著名的開發框架。通過本課程可以學習到gevent的各個元件的原理、使用方法及高階技巧,並在實踐中掌握gevent的應用場景,最後通過部分原始碼分析徹底掌握多開發程式設計的核心技巧。

gevent是什麼
Gevent是一個基於libev的併發庫。它為各種併發和網路相關的任務提供了整潔的API。

gevent起源
1.主要開發者:Denis Bilenko;

2.能夠查到的最早版本。


gevent發展
1.github程式碼貢獻者由幾位增加到57位;

2.程式碼更新也非常頻繁,我可以看到下面這張圖,是它的程式碼更新的頻率的一個圖示。


gevent特點
1.基於libev的高效時間迴圈
Libev是什麼?
Libev是高效能事件迴圈/事件模型的網路庫,並且包含大量新特性。它是繼lievent之後的一套全新網路庫。它追求的目標:速度更快,bug更少,特性更多,體積更小。它和libevent很像,按照作者的介紹,可以作為libevent的替代者,能夠提供更高的效能,並且不需要複雜配置。
2.基於greenlet的輕量級執行單元
3.重用Python標準庫API內容(比如Events,Queues)
4.socket協同ssl
5.利用執行緒池或者c-cares 來執行DNS查詢

6.靈猴補丁能夠協同第三方庫

誰在使用gevent

1.database drivers

2.Web servers

3.Applications

安裝gevent
1.推薦的平臺:max osx 或者Linux(Ubuntu)
2.會使用pip指令
1)pip是什麼?
pip是一個python包管理工具,主要用於安裝PyPI上的軟體包;
2)如何安裝;
3)Mac:brew install python - pip;
4)Ubuntu:sudo apt - get install python - pip ;
5)使用方法:pip install SomePackage;
6)檢視已經安裝的軟體:pip show SomePackage;
7)解除安裝軟體:pip uninstall SomePackage。

3.安裝virtualenv
1)virtualenv是什麼?
virtualenv用來建立隔離的python環境;
處理Python環境的多版本和模組依賴,以及相應的許可權是一個很常見的問題。比如,你有一個應用使用的是lib1,但是另一個應用卻要使用lib2.如何處理呢?如果把所有的模組安裝到 / usr /lib / python 2.7 /site - package (或者是你本機的python預設的模組安裝目錄),那你極有可能無意中升級一些不該升級的模組;
它會建立一個擁有獨立安裝目錄的Python環境,該隔離環境不會與其他virtualenv環境共享模組(可選擇是否訪問全域性庫目錄);
使用:virtualenv venv;
Source venv / activate;
deactivate。
4.Pip install gevent
5.檢測是否安裝成功
6.Windows安裝參考:http://lutaf.com/57.htm

前期準備


1.Pycharm
2.iTerm2
3.版本管理工具git 或者 svn
4.github賬戶

學習方法
1.興趣;
2.目的性;
3.學會搜尋;
4.多寫程式碼。