To set limiter properties, use the following rhino-console commands or related MBean operations. For more information on the configuration properties for input limiter types see Limiter Types and About Rate Limiting.

Warning Limiters can only be configured administratively — RAs or services cannot configure limiters.

Console commands

Tip For details of available properties for each limiter type, see Limiter Types.

configureratelimiter

Command

configureratelimiter <limitername> [-nodes node1,node2...] <[-property value]
[-property value] ... >
  Description
    Sets the values of the specified configuration properties of the limiter on the
    given node(s). Use a value of '-' to clear existing per-node settings

Example

To set rate limiter properties:

$ ./rhino-console configureratelimiter SystemInput -nodes 101 -bypassed false -maxrate 100
Updated config properties for limiter 'SystemInput':
maxrate=100
bypassed=false

configuresaturationlimiter

Command

configuresaturationlimiter <limitername> [-nodes node1,node2...] <[-property
value] [-property value] ... >
  Description
    Sets the values of the specified configuration properties of the limiter on the
    given node(s). Use a value of '-' to clear existing per-node settings

Example

To set saturation limiter properties:

$ ./rhino-console configuresaturationlimiter QueueSaturation -maxsaturation 75
Updated config properties for limiter 'QueueSaturation':
maxsaturation=7

configureabsolutestatlimiter

Command

configureabsolutestatlimiter <limitername> [-nodes node1,node2...] <[-property
value] [-property value] ... >
  Description
    Sets the values of the specified configuration properties of the limiter on the
    given node(s). Use a value of '-' to clear existing per-node settings

Example

To configure an absolute stat limiter called ActivitiesActive based on the active statistic in the Activities parameter set with three progressive levels of limiting tiers. When the active gauge reports a value at or above:

  • 10000 — 50% of all unit requests will be refused;

  • 12000 — 75% of all unit requests will be refused; or

  • 13000 — 100% of all unit requests will be refused.

$ ./rhino-console configureabsolutestatlimiter ActivitiesActive \
  -parameterset Activities \
  -statistic active \
  -values 10000,12000,13000 \
  -limitpercentages 50,75,100
Updated config properties for limiter 'ActivitiesActive':
parameterset=Activities
statistic=active
values=10000,12000,13000
limitpercentages=50,75,100

configurerelativestatlimiter

Command

configurerelativestatlimiter <limitername> [-nodes node1,node2...] <[-property
value] [-property value] ... >
  Description
    Sets the values of the specified configuration properties of the limiter on the
    given node(s). Use a value of '-' to clear existing per-node settings

Example

To configure a relative stat limiter called MemDBLocalCommitted based on the committedSize and maxCommittedSize statistics in the MemDB-Local parameter set with three progressive levels of limiting tiers. When the committedSize gauge reports a value at or above:

  • 75% of maxCommittedSize — 50% of all unit requests will be refused;

  • 80% of maxCommittedSize — 75% of all unit requests will be refused; or

  • 90% of maxCommittedSize — 100% of all unit requests will be refused.

$ ./rhino-console configurerelativestatlimiter MemDBLocalCommitted \
  -parameterset MemDB-Local \
  -statistic committedSize \
  -relativeparameterset MemDB-Local \
  -relativestatistic maxCommittedSize \
  -relativepercentages 75,80,90 \
  -limitpercentages 50,75,100
Updated config properties for limiter 'MemDBLocalCommitted':
parameterset=MemDB-Local
statistic=committedSize
relativeparameterset=MemDB-Local
relativestatistic=maxCommittedSize
relativepercentages=75,80,90
limitpercentages=50,75,100
Note

If -nodes are specified, these commands set properties for the listed nodes only (the "per-node" properties). Otherwise, these commands update the default properties for the limiter (the properties that apply whenever no per-node property is set).

You cannot change the name or type of a limiter — these are set when a limiter is created.

MBean operations

Limiter MBean operations

Operation Usage
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.LimiterMBean#setBypassedDefault(boolean)[setBypassedDefault]
void setBypassedDefault(boolean bypassed)
        throws ConfigurationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.LimiterMBean#setBypassedForNode(boolean%5b%5d,%020int%5b%5d)[setBypassedForNode]
void setBypassedForNode(boolean[] bypassed, int[] nodeIDs)
        throws NullPointerException, ConfigurationException, InvalidArgumentException;
  axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.LimiterMBean#setParent(java.lang.String)[setParent]
void setParent(String parentName)
        throws ConfigurationException, ValidationException, NullPointerException, InvalidArgumentException;

RateLimiter MBean operations

Operation Usage
  axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RateLimiterMBean#setDepthDefault(double)[setDepthDefault]
void setDepthDefault(double depth)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RateLimiterMBean#setDepthForNode(double%5b%5d,%20int%5b%5d)[setDepthForNode]
void setDepthForNode(double[] depth, int[] nodeIDs)
        throws ConfigurationException,  ValidationException, NullPointerException, InvalidArgumentException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RateLimiterMBean#setMaxRateDefault(double)[setMaxRateDefault]
void setMaxRateDefault(double depth)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RateLimiterMBean#setMaxRateForNode(double%5b%5d,%20int%5b%5d)[setMaxRateForNode]
void setMaxRateForNode(double[] depth, int[] nodeIDs)
        throws ConfigurationException,  ValidationException, NullPointerException, InvalidArgumentException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RateLimiterMBean#setTimeUnit(java.lang.String)[setTimeUnit]
void setTimeUnit(String timeUnit)
        throws ConfigurationException, ValidationException;

QueueSaturationLimiter MBean operations

Operation Usage
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.QueueSaturationLimiterMBean#setMaxSaturationDefault(double)[setMaxSaturationDefault]
void setMaxSaturationDefault(double maxSaturation)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.QueueSaturationLimiterMBean#setMaxSaturationForNode(double%5b%5d,%20int%5b%5d)[setMaxSaturationForNode]
void setMaxSaturationForNode(double[] maxSaturation, int[] nodeIDs)
        throws ConfigurationException, ValidationException,NullPointerException, InvalidArgumentException;

StatLimiter MBean operations

Operation Usage
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.StatLimiterMBean#setParameterSetStatistic(java.lang.String,%20java.lang.String)[setParameterSetStatistic]
void setParameterSetStatistic(String parameterSet, String statistic)
        throws ConfigurationException, ValidationException;

AbsoluteStatLimiter MBean operations

Operation Usage
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.AbsoluteStatLimiterMBean#setTier(long,%20double)[setTier]
void setTier(long value, double limitPercentage)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.AbsoluteStatLimiterMBean#setTierForNode(long%5b%5d,%20double%5b%5d,%20int%5b%5d)[setTierForNode]
void setTierForNode(long[] values, double[] limitPercentages, int[] nodeIDs)
        throws ConfigurationException, InvalidArgumentException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.AbsoluteStatLimiterMBean#clearTier(long)[clearTier]
void clearTier(long value)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.AbsoluteStatLimiterMBean#clearTierForNode(long%5b%5d,%20int%5b%5d)[clearTierForNode]
void clearTierForNode(long[] values, int[] nodeIDs)
        throws ConfigurationException, InvalidArgumentException, ValidationException;

RelativeStatLimiter MBean operations

Operation Usage
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RelativeStatLimiterMBean#setRelativeParameterSetStatistic(java.lang.String,%20java.lang.String)[setRelativeParameterSetStatistic]
void setRelativeParameterSetStatistic(String parameterSet, String statistic)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RelativeStatLimiterMBean#setTier(double,%20double)[setTier]
void setTier(double relativePercentage, double limitPercentage)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RelativeStatLimiterMBean#setTierForNode(double%5b%5d,%20double%5b%5d,%20int%5b%5d)[setTierForNode]
void setTierForNode(double[] relativePercentages, double[] limitPercentages, int[] nodeIDs)
        throws ConfigurationException, InvalidArgumentException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RelativeStatLimiterMBean#clearTier(double)[clearTier]
void clearTier(double relativePercentage)
        throws ConfigurationException, ValidationException;
 axref:rhino-rate-limiting-api/com.opencloud.rhino.limiting.RelativeStatLimiterMBean#clearTierForNode(double%5b%5d,%20int%5b%5d)[clearTierForNode]
void clearTierForNode(double[] relativePercentages, int[] nodeIDs)
        throws ConfigurationException, InvalidArgumentException, ValidationException;
Previous page Next page
Rhino Version 3.0.0