gevent是python的協程模組,協程可以理解成更輕量化的執行緒。因為效能測試工具的一些限制,就自己萌發了自己寫效能測試工具的念想,當然,寫的比較簡單,比如缺少效能指標的收集,慢慢的優化 出來,這個只是為了拿出來練練手
import geventimport requests
import time
def get_res(url):
res = requests.get(url)
print(res.content.decode('utf-8'))
if __name__ == '__main__':
g_lista =
start_time=time.time()
for i in range(500):
g = gevent.spawn(get_res, '')
print(i, flush=true)
print(len(g_lista))
[a.join() for a in g_lista]
end_time = time.time() - start_time
print(end_time)
python(33) 高併發 協程 Gevent
協程 實現單執行緒下的高併發。例如web高併發伺服器,nginx,nodejs,其實都是單執行緒,而如何實現上萬的高併發呢,用的就是協程。個人理解,協程快就是無論你啟動了幾個函式,整個程式的執行時長 最長的那個函式時長 整個程式,無論你啟動幾個函式,執行花費 只用了函式中最長的那個時間 2s 2.執...
python(33) 高併發 協程 Gevent
協程 實現單執行緒下的高併發。例如web高併發伺服器,nginx,nodejs,其實都是單執行緒,而如何實現上萬的高併發呢,用的就是協程。個人理解,協程快就是無論你啟動了幾個函式,整個程式的執行時長 最長的那個函式時長 整個程式,無論你啟動幾個函式,執行花費 只用了函式中最長的那個時間 2s 2.執...
高併發快取實現
private static concurrenthashmap gloddeptfutumap new concurrenthashmap future 介面允許表示已經完成的任務 正在執行過程中的任務或者尚未開始執行的任務。futuretask 類實現了 future,幷包含一些建構函式,允許將...