我正在编写一个 webspider 并在 Heroku 上分配它,在主要参与者(分配路由器的那个)达到 512Mb 后它崩溃了。
基本上,每个解析的 URL 都会发送到 FetchRouter。队列的消息列表太大,无法进入内存。
有什么方法可以将此列表存储在磁盘中吗?
fetcherRouter = context.actorOf(Props[URLFetcher].withRouter(RandomRouter(30)), name = "fetcherRouter")
最佳答案
确实。
有FileBasedMailbox
。请参阅 Akka 2.0.x PDF(或相应网页)的第 7.1 节“持久邮箱”。
关于java - AKKA:Actor 路由器消息持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15008921/