我正在尋找一個多線程而不是多進程的python web服務器(比如Apache的mod_python)。我希望它是多線程的,因爲我想有一個內存對象緩存,將被各種http線程使用。我的網絡服務器做了很多昂貴的工作,並計算了一些需要在內存中緩存以供將來使用的大型數組,以避免重新計算。這在多進程Web服務器環境中是不可能的。將這些信息存儲在memcache中也不是一個好主意,因爲數組很大,並且將它們存儲在memcache中會導致來自memcache的數據的反序列化,除了IPC的額外開銷之外。一個好的多線程python web服務器?
我使用BaseHttpServer實現了一個簡單的網絡服務器,它具有良好的性能,但在幾個小時後就會卡住。我需要一些更成熟的網絡服務器。是否可以配置apache在線程模型下使用mod_python,以便我可以做一些對象緩存?
如果它沒有多線程,那麼我將如何能夠將對象存儲到緩存中並跨多個http請求使用它們? – NeoAnderson 2008-10-17 19:31:41
這是一個使用select的異步編程框架。 http://twistedmatrix.com/projects/core/documentation/howto/async.html – 2008-10-17 19:44:24
實際上,它是多線程的。請參閱下面的答案。 – Glyph 2008-10-18 03:30:22