Receivers don't send the full credits (max_credits), but rather the actual number of bytes received
- Author:
- Bela Ban
Fields inherited from class org.jgroups.protocols.FlowControl |
CREDIT_REQUEST_HDR, frag_size_received, ignore_synchronous_response, ignore_thread, max_block_time, max_block_times, max_credits, min_credits, min_threshold, num_credit_requests_received, num_credit_requests_sent, num_credit_responses_received, num_credit_responses_sent, received, REPLENISH_HDR, running |
Constructor Summary |
MFC()
|
Methods inherited from class org.jgroups.protocols.FlowControl |
adjustCredit, down, dumpStats, getAverageTimeBlocked, getMaxBlockTime, getMaxBlockTime, getMaxBlockTimes, getMaxCredits, getMinCredits, getMinThreshold, getNumberOfCreditRequestsReceived, getNumberOfCreditRequestsSent, getNumberOfCreditResponsesReceived, getNumberOfCreditResponsesSent, handleConfigEvent, handleCreditRequest, printMap, printReceiverCredits, resetStats, sendCredit, sendCreditRequest, setMaxBlockTime, setMaxBlockTimes, setMaxCredits, setMinCredits, setMinThreshold, start, up |
Methods inherited from class org.jgroups.stack.Protocol |
destroy, enableStats, getConfigurableObjects, getDownProtocol, getDownServices, getId, getIdsAbove, getLevel, getName, getProtocolStack, getSocketFactory, getThreadFactory, getTransport, getUpProtocol, getUpServices, getValue, isErgonomics, printStats, providedDownServices, providedUpServices, requiredDownServices, requiredUpServices, resetStatistics, setDownProtocol, setErgonomics, setId, setLevel, setProtocolStack, setSocketFactory, setUpProtocol, setValue, setValues, statsEnabled |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
credits
protected CreditMap credits
- Maintains credits per member
last_credit_request
protected long last_credit_request
- Last time a credit request was sent. Used to prevent credit request storms
MFC
public MFC()
unblock
public void unblock()
- Allows to unblock a blocked sender from an external program, e.g. JMX
- Overrides:
unblock
in class FlowControl
printCredits
public java.lang.String printCredits()
- Overrides:
printCredits
in class FlowControl
printSenderCredits
public java.lang.String printSenderCredits()
- Specified by:
printSenderCredits
in class FlowControl
getNumberOfBlockings
public int getNumberOfBlockings()
- Specified by:
getNumberOfBlockings
in class FlowControl
getTotalTimeBlocked
public long getTotalTimeBlocked()
- Specified by:
getTotalTimeBlocked
in class FlowControl
handleMulticastMessage
protected boolean handleMulticastMessage()
- Description copied from class:
FlowControl
- Whether the protocol handles message with dest == null || dest.isMulticastAddress()
- Specified by:
handleMulticastMessage
in class FlowControl
- Returns:
init
public void init()
throws java.lang.Exception
- Description copied from class:
Protocol
- Called after instance has been created (null constructor) and before protocol is started.
Properties are already set. Other protocols are not yet connected and events cannot yet be sent.
- Overrides:
init
in class FlowControl
- Throws:
java.lang.Exception
- Thrown if protocol cannot be initialized successfully. This will cause the
ProtocolStack to fail, so the channel constructor will throw an exception
stop
public void stop()
- Description copied from class:
Protocol
- This method is called on a
Channel.disconnect()
. Stops work (e.g. by closing multicast socket).
Will be called from top to bottom. This means that at the time of the method invocation the
neighbor protocol below is still working. This method will replace the
STOP, STOP_OK, CLEANUP and CLEANUP_OK events. The ProtocolStack guarantees that
when this method is called all messages in the down queue will have been flushed
- Overrides:
stop
in class FlowControl
handleDownMessage
protected java.lang.Object handleDownMessage(Event evt,
Message msg,
Address dest,
int length)
- Specified by:
handleDownMessage
in class FlowControl
needToSendCreditRequest
protected boolean needToSendCreditRequest()
handleCredit
protected void handleCredit(Address sender,
long increase)
- Specified by:
handleCredit
in class FlowControl
handleViewChange
protected void handleViewChange(java.util.List<Address> mbrs)
- Overrides:
handleViewChange
in class FlowControl
Copyright © 1998-2012 Bela Ban / Red Hat. All Rights Reserved.