Serial Gateway Sender Class Diagram

GatewaySender AsyncEventQueue GemFireCacheImpl AbstractGatewaySender GatewayTransportFilter GatewaySenderAdvisor AsyncEventQueueImpl SerialAsyncEventQueueImpl AbstractGatewaySenderEventProcessor SerialGatewaySenderQueue SerialGatewaySenderEventProcessor GatewaySenderEventDispatcher AbstractRemoteGatewaySender RemoteSerialGatewaySenderEventProcessor GatewaySenderEventRemoteDispatcher SerialGatewaySenderImpl * * 1* 1*  

Gateway Receiver Class Diagram

  GatewayReceiver GemFireCacheImpl GatewayReceiverImpl GatewayConflictResolver AbstractRegionEntry GatewayTransportFilter CacheServer *  

 

Serial Gateway Sender Sequence

  Serial Gateway Sender Sequence LocalRegion LocalRegion AbstractGatewaySender AbstractGatewaySender SerialGatewaySenderEventProcessor SerialGatewaySenderEventProcessor RegionQueue RegionQueue GatewaySenderEventDispatcher GatewaySenderEventDispatcher AckReaderThread AckReaderThread distribute(event, dsid) filter, clone, stat enqueueEvent() put() loop[processQueue] peek() events filter, conflate dispatchBatch connect to receiverConnectionManagerImplcreateClientToServerConnection success? if AsyncQueue eventQueueRemove WAN Ack handler handleSuccessBatchAck eventQueueRemove 

 

Locator Discovery Sequence

  Locator Discovery Sequence InternalLocator InternalLocator WanLocatorDiscovererImpl WanLocatorDiscovererImpl RemoteLocatorJoinRequest RemoteLocatorJoinRequest LocatorDiscovery LocatorDiscovery LocatorHelper LocatorHelper LocatorMembershipListenerImpl LocatorMembershipListenerImpl distribute(event, dsid) discover() RemoteLocatorJoinRequest() exchangeRemoteLocators() addExchangedLocators() locatorJoined()

1 Comment

  1. For anyone interested, there's a newer version of the article that goes deeper into the details: Asynchronous Event Distribution Internals