|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
| Packages that use AbstractTrafficShapingHandler | |
|---|---|
| org.jboss.netty.handler.traffic | |
| Uses of AbstractTrafficShapingHandler in org.jboss.netty.handler.traffic |
|---|
| Subclasses of AbstractTrafficShapingHandler in org.jboss.netty.handler.traffic | |
|---|---|
class |
ChannelTrafficShapingHandler
This implementation of the AbstractTrafficShapingHandler is for channel
traffic shaping, that is to say a per channel limitation of the bandwidth.The general use should be as follow: Add in your pipeline a new ChannelTrafficShapingHandler, before a recommended ExecutionHandler (like
OrderedMemoryAwareThreadPoolExecutor or MemoryAwareThreadPoolExecutor).ChannelTrafficShapingHandler myHandler = new ChannelTrafficShapingHandler(executor); executor could be created using Executors.newCachedThreadPool(); pipeline.addLast("CHANNEL_TRAFFIC_SHAPING", myHandler); Note that this handler has a Pipeline Coverage of "one" which means a new handler must be created for each new channel as the counter cannot be shared among all channels. For instance, if you have a ChannelPipelineFactory, you should create a new ChannelTrafficShapingHandler in this
ChannelPipelineFactory each time getPipeline() method is called.Other arguments can be passed like write or read limitation (in bytes/s where 0 means no limitation) or the check interval (in millisecond) that represents the delay between two computations of the bandwidth and so the call back of the doAccounting method (0 means no accounting at all). A value of 0 means no accounting for checkInterval. |
class |
GlobalTrafficShapingHandler
This implementation of the AbstractTrafficShapingHandler is for global
traffic shaping, that is to say a global limitation of the bandwidth, whatever
the number of opened channels.The general use should be as follow: Create your unique GlobalTrafficShapingHandler like: GlobalTrafficShapingHandler myHandler = new GlobalTrafficShapingHandler(executor); executor could be created using Executors.newCachedThreadPool(); pipeline.addLast("GLOBAL_TRAFFIC_SHAPING", myHandler); Note that this handler has a Pipeline Coverage of "all" which means only one such handler must be created and shared among all channels as the counter must be shared among all channels. Other arguments can be passed like write or read limitation (in bytes/s where 0 means no limitation) or the check interval (in millisecond) that represents the delay between two computations of the bandwidth and so the call back of the doAccounting method (0 means no accounting at all). A value of 0 means no accounting for checkInterval. |
| Constructors in org.jboss.netty.handler.traffic with parameters of type AbstractTrafficShapingHandler | |
|---|---|
TrafficCounter(AbstractTrafficShapingHandler trafficShapingHandler,
Executor executor,
String name,
long checkInterval)
Constructor with the AbstractTrafficShapingHandler that hosts it, the executorService to use, its
name, the checkInterval between two computations in millisecond |
|
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||