Состояние хранилища потоков Akka и отправляется как параметр при перезапуске источника - PullRequest
0 голосов
/ 12 ноября 2018

Есть ли способ сохранить возвращаемое значение потока и отправить его в качестве параметра для следующего перезапуска источника? этот вопрос о том, как сохранить состояния в потоках akka. Я читаю большой файл с удаленного сервера, используя akka http get single request, и моя цель:

перезапускать источник при каждом сбое удаленного сервера. сохраните состояние в потоке (сохраните последний успешный байт, который поток успешно использовал) и отправьте его источнику при перезапуске. Это мой код для перезапуска источника: Я хотел бы вызвать sendGetRequest с состоянием, которое я сохранил в parseAndIngestLargeFile (x)

RestartSource.withBackoff(minBackoff = 1 second, maxBackoff = 30 seconds,randomFactor = 0.2) { () =>
Source.single(sendGetRequest())
//send gakka http single request get to a remote server
.map(x => {parseAndIngestLargeFile(x)})
.map(connection => println(“Failed to connect to go server, going to retry get request…” + connection))
}
.runWith(Sink.ignore)

как это сделать?

...