Как сохранить сообщения в актере и ответить после сбоя(сбой JVM)?

#jvm #akka #actor #akka-stream #akka-persistence

Вопрос:

Я собираюсь использовать актеров для более чем 5000 клиентов, чтобы доставлять им сообщения, когда они прибудут. Если клиент отключает сообщения клиентов, хранящиеся в почтовом ящике соответствующего Субъекта.Но если jvm выйдет из строя, все сообщения в почтовом ящике актера будут сброшены. Если я использую актер сохранения, я буду хранить каждое сообщение актера на диске?? затем ответить актеру, такому как почтовый ящик на диске?

Ответ №1:

Широкий подход заключался бы в использовании постоянства Akka (это звучит как разумное решение для поиска событий), чтобы можно было восстановить состояние субъекта. Вы бы выбрали и настроили серверную часть для сохранения (например, базу данных локального уровня или базу данных на расстоянии сети, такую как MySQL/Postgres или Cassandra) для хранения событий.

Обратите внимание, что сообщения в почтовом ящике не сохраняются; только те сообщения, которые обрабатываются субъектом, могут сохранять изменения состояния.