Отслеживая соответствующий исходный код, PersistentActor
расширяет Eventsourced
, что расширяет PersistenceStash , что, в свою очередь, расширяет черта Stash :
trait Stash extends UnrestrictedStash with RequiresMessageQueue[DequeBasedMessageQueueSemantics]
Asуказано в исходном коде:
Обратите внимание, что черта Stash
может использоваться только вместе с актерами, которые имеют почтовый ящик на основе deque.По умолчанию акторы на основе Stash запрашивают почтовый ящик на основе Deque, поскольку свойство stash расширяет RequiresMessageQueue[DequeBasedMessageQueueSemantics]
.Вы можете переопределить почтовый ящик по умолчанию, предоставляемый при запросе DequeBasedMessageQueueSemantics
через конфигурацию ...
Один из подходов заключается в настройке вашего почтового ящика, подобного тому, что предлагается в примечаниях исходного кода:
akka.actor.mailbox.requirements {
"akka.dispatch.BoundedDequeBasedMessageQueueSemantics" = your-custom-mailbox
}