2012-06-10 18 views
2

我正在編寫一個Yesod應用程序,但它也需要分叉幾個非Web服務。 (UDP偵聽器,TCP偵聽端口等)在何處添加「始終運行」線程到Yesod應用程序

無論我的應用程序是在'yesod devel'中運行還是部署用於生產,無論是在應用程序中運行,它都可以無縫工作,哪裏是拼接在叉子中的正確位置。

謝謝,

Chris。

P.S.我真的只是想添加一個僞主要,這將分叉(在服務啓動)由任何webserver運行通過WAI的應用程序。

回答

3

你應該把它放在腳手架Application.hs文件中的makeApplication函數中。

此功能將爲已啓動 Web應用程序的每個實例運行一次,因爲你幾乎總是隻運行你的應用程序的一個實例,這是你應該做的地方。

請注意,理論上可以在同一過程中運行同一WAI應用程序的多個實例,例如,如果你想要兩個實例在不同的端口上偵聽,但默認情況下這種情況絕不會發生

相關問題