2013-02-21 124 views
0

我正在寫一個webspider並在Heroku上分配它,並在主演員(分配路由器)達到512Mb後崩潰。AKKA:演員路由器消息持久

基本上每個解析的URL都被髮送到FetchRouter。隊列中的消息列表很大,以至於無法訪問內存。

有什麼方法可以將這個列表存儲在磁盤中嗎?

fetcherRouter = context.actorOf(Props[URLFetcher].withRouter(RandomRouter(30)), name = "fetcherRouter") 
+0

問題是,一個加載頁面會產生大量的新鏈接訪問,所以你的郵箱將炸燬。我不知道爬蟲是如何處理這個問題的,但是應該有大量關於它的研究。 – 2013-02-21 18:45:45

回答

1

確實。

FileBasedMailbox。查看Akka 2.0.x PDF(或相應的網頁)的第7.1節「Durable Mailboxes」。

+0

是的,但這並不能節省您的內存不足,它只會保存消息。 – 2013-02-21 18:39:17

+0

夥計們,我不能告訴play2.1讀取配置以使用FileBasedMailbox作爲我的路由器。你如何去做? – 2013-03-02 13:16:36