2015-10-15 84 views
3

我想運行APScheduler這是WSGI的一部分(通過Apache的modwsgi與3名工人)webapp。我在WSGI世界新因此,我將不勝感激,如果你能解決我的疑惑:python:APScheduler在WSGI應用程序

  1. 如果APScheduler是Web應用程序的一部分 - 它成爲活着只是第一次請求後(第一次啓動後/復位的Apache),這是運行至少由一名工人?啓動/重置Apache不會啓動它 - 至少需要一個請求。

  2. 併發請求怎麼樣 - 每個工作人員是否都運行同一套APScheduler的任務,或者只有一套工作人員共享?

  3. 會一次運行進程(webapp運行通過工人)保持活動狀態(所以APScheduler的任務將執行)或它可能會在一段空閒時間後終止(因此 - APScheduler的任務將不會執行)?

謝謝!

+0

工作線程或工作進程? –

+0

3個主題,1個進程 – KoDPI

回答

2

你說得對 - 調度程序在第一個請求進入之前不會啓動。 因此,在WSGI worker中運行調度程序不是一個好主意。更好的方法是在獨立進程中運行調度程序,並在需要時通過一些RPC機制(如RPyC或Execnet)連接到調度程序。

+0

亞歷克斯:那麼問題#2:併發請求?謝謝。 – Raj

+0

Mod_wsgi的工作線程不運行APScheduler的作業;它爲此維護自己的線程池。 –

相關問題