我有一個已經寫好的大型應用程序,使用標準的python線程構造,如線程,隊列,普通套接字和多處理。它有一個使用Flask實現的Web前端。應用程序的一小部分可以使用gevent,還是整個應用程序都必須切換?
我想用websockets實時暴露應用程序狀態的某個部分。我看着使用gevent和gunicorn的Flask-Sockets。
我的整個應用程序是否必須使用事件驅動的模型,或者我可以保留其他阻塞代碼的方式嗎? (基本測試似乎有阻塞和代碼均勻,但有任何警告,我將不得不重寫大部分的代碼?)
我還沒有找到答案谷歌搜索和檢查gevent和gunicorn主頁和常見問題。我問,因爲我知道gevent可以通過猴子修補現有的庫來實現。
如果我做gevent.monkey.patch_socket,是否用gevent版本替換系統中的所有套接字(理想情況下不會)?鏈接頁面上的文檔沒有說清楚。 另外,如果我有一個gevent.socket,我可以從非gevent線程訪問它嗎? – stephenbez