final
class
PersistentChannel extends Actor
Value Members
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
def
+(other: String): String
-
-
final
def
==(arg0: Any): Boolean
-
def
aroundPostRestart(reason: Throwable): Unit
-
def
aroundPostStop(): Unit
-
def
aroundPreRestart(reason: Throwable, message: Option[Any]): Unit
-
def
aroundPreStart(): Unit
-
def
aroundReceive(receive: actor.Actor.Receive, msg: Any): Unit
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
implicit
val
context: ActorContext
-
-
-
-
-
-
-
def
finalize(): Unit
-
def
formatted(fmtstr: String): String
-
final
def
getClass(): Class[_]
-
def
hashCode(): Int
-
final
def
isInstanceOf[T0]: Boolean
-
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
def
postRestart(reason: Throwable): Unit
-
def
postStop(): Unit
-
def
preRestart(reason: Throwable, message: Option[Any]): Unit
-
def
preStart(): Unit
-
-
implicit final
val
self: ActorRef
-
final
def
sender(): ActorRef
-
def
supervisorStrategy: SupervisorStrategy
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
def
unhandled(message: Any): Unit
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
-
A PersistentChannel implements the same functionality as a Channel but additionally persists Deliver requests before they are served. Persistent channels are useful in combination with slow destinations or destinations that are unavailable for a long time.
Deliver
requests that have been persisted by a persistent channel are deleted when destinations confirm the receipt of the corresponding messages.The number of pending confirmations can be limited by a persistent channel based on the parameters of PersistentChannelSettings. It can suspend delivery when the number of pending confirmations reaches
pendingConfirmationsMax
and resume delivery again when this number falls belowpendingConfirmationsMin
. This prevents both flooding destinations with more messages than they can process and unlimited memory consumption by the channel. A persistent channel continues to persist Deliver request even when message delivery is temporarily suspended.A persistent channel can also reply to Deliver senders if the request has been successfully persisted or not (see
replyPersistent
parameter in PersistentChannelSettings). In case of success, the channel replies with the contained Persistent message, otherwise with a PersistenceFailure message.