Package org.nustaq.kontraktor.routers
Class RoundRobinKrouter
java.lang.Object
org.nustaq.kontraktor.Actors
org.nustaq.kontraktor.Actor<T>
org.nustaq.kontraktor.routers.AbstractKrouter<T>
org.nustaq.kontraktor.routers.SingleActiveServiceKrouter<T>
org.nustaq.kontraktor.routers.HotColdFailoverKrouter<RoundRobinKrouter>
org.nustaq.kontraktor.routers.RoundRobinKrouter
- All Implemented Interfaces:
java.io.Serializable,java.util.concurrent.Executor,Monitorable,RemotedActor,ServingActor
public class RoundRobinKrouter extends HotColdFailoverKrouter<RoundRobinKrouter>
A load balancing Krouter. Forwards round robin. Enables dynamic scaling of a
service.
Clients of stateful services stick to initially connected instance (unless this fails)
- See Also:
- Serialized Form
-
Nested Class Summary
-
Field Summary
Fields inherited from class org.nustaq.kontraktor.routers.AbstractKrouter
CLIENT_PING_INTERVAL_MS, clients, lastSwitch, nextAliveRemoteActors, SERVICE_UNAVAILABLE, timeoutMapFields inherited from class org.nustaq.kontraktor.Actor
__cbQueue, __clientConnection, __connections, __currentDispatcher, __mailbox, __mailboxCapacity, __mbCapacity, __publishTarget, __remoteId, __scheduler, __self, __stopped, __ticketMachine, connection, sender, userData, zzRoutingGCEnabled, zzServerMsgCallbackFields inherited from class org.nustaq.kontraktor.Actors
CONT, DEFAULT_TIMOUT, defaultScheduler, delayedCalls, exec, instance, MAX_EXTERNAL_THREADS_POOL_SIZE, version -
Constructor Summary
Constructors Constructor Description RoundRobinKrouter() -
Method Summary
Modifier and Type Method Description protected ActorgetRemoteRef()protected voidwillDispatch()Methods inherited from class org.nustaq.kontraktor.routers.HotColdFailoverKrouter
getServices, init, router$handleServiceDisconnect, setRemoteRefMethods inherited from class org.nustaq.kontraktor.routers.SingleActiveServiceKrouter
dispatchRemoteCall, main, router$RegisterServiceMethods inherited from class org.nustaq.kontraktor.routers.AbstractKrouter
__dispatchRemoteCall, checkPingOnClients, clientConnected, clientDisconnected, createErrorPromiseResponse, forwardCall, forwardCallInternal, forwardMultiCall, forwardMultiCallInternal, getClientPingTimeout, getServicePingTimeout, handleServiceDiscon, hasBeenUnpublished, isStateful, pingServices, router$clientPing, sendFailoverNotification, sendFailoverNotificationInternalMethods inherited from class org.nustaq.kontraktor.Actor
__addDeadLetter, __addRemoteConnection, __addStopHandler, __enqueueCall, __getCachedMethod, __removeRemoteConnection, __stop, __stopImpl, __submit, ask, askMsg, asyncstop, checkThread, close, closeCurrentClient, current, cyclic, debounce, delayed, execInThreadPool, execute, getActor, getActorRef, getCallbackSize, getConnections, getCurrentDispatcher, getFactory, getMailboxSize, getQSizes, getReport, getScheduler, getSubMonitorables, getUntypedRef, hasStopped, inside, inThread, isCallbackQPressured, isEmpty, isMailboxPressured, isProxy, isPublished, isRemote, isStopped, ping, self, serialOn, setServerMsgCallback, stop, stopSafeClose, tell, tellMsg, unpublish, zzkrouterLostClient, zzRoutingRefGCMethods inherited from class org.nustaq.kontraktor.Actors
AddDeadLetter, all, all, all, allMapped, AsActor, AsActor, AsActor, AsActor, AsUntypedActor, awaitAll, awaitAll, awaitAll, awaitAll, complete, complete, DeadLetters, flow, InThread, isComplete, isCont, isError, isErrorOrComplete, isResult, isTimeout, kYield, kYield, promise, race, race, reject, resolve, resolve, stream, SubmitDelayed, yieldCallbacks
-
Constructor Details
-
RoundRobinKrouter
public RoundRobinKrouter()
-
-
Method Details
-
getRemoteRef
- Overrides:
getRemoteRefin classHotColdFailoverKrouter<RoundRobinKrouter>
-
willDispatch
protected void willDispatch()- Overrides:
willDispatchin classSingleActiveServiceKrouter<RoundRobinKrouter>
-