|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.sun.grizzly.filter.ReadFilter
com.sun.grizzly.filter.ParserProtocolFilter
com.sun.grizzly.rcm.ResourceAllocationFilter
public class ResourceAllocationFilter
This ProtocolFilter is an implementation of a Resource Consumption Management
(RCM) system. RCM system are allowing you to enable virtualization of system
resources per web application, similar to Solaris 10 Zone or the outcome of
the upcoming JSR 284.
This ProtocolFiler uses a ProtocolParser
to determine which
token to use to enable virtualization. As an example, configuring this class
to use the ContextRootAlgorithm
will allow virtualization
and isolation of http request. As an example, if you define:
-Dcom.sun.grizzly.rcm.policyMetric="/myApplication|0.9"
This ProtocolFilter will allocate 90% of the current threads count to
application myApplication, and the remaining 10% to any other context-root
(or application). See com.sun.grizzly.rcm.RCM for an example.
Field Summary | |
---|---|
protected static String |
ALLOCATION_MODE
|
protected static String |
allocationPolicy
The allocation mode used: celling or Reserve. |
static String |
BYTE_BUFFER
|
static String |
BYTEBUFFER_INPUTSTREAM
|
protected static String |
CEILING
|
static String |
INVOKE_NEXT
|
protected static double |
leftRatio
The thread ratio used when an application isn't listed as a privileged application. |
protected static String |
PATH_STRING
|
protected static ConcurrentHashMap<String,Pipeline> |
pipelines
The Pipeline configured based on the
threadRatio . |
protected static ConcurrentHashMap<String,Double> |
privilegedTokens
The list of privileged token used to decide if a request can be serviced by the privileged Pipeline . |
protected static String |
QUERY_STRING
|
protected static String |
RESERVE
|
protected static String |
RULE_TOKENS
|
Fields inherited from class com.sun.grizzly.filter.ReadFilter |
---|
continousExecution, UDP_SOCKETADDRESS |
Fields inherited from interface com.sun.grizzly.ProtocolFilter |
---|
SUCCESSFUL_READ |
Constructor Summary | |
---|---|
ResourceAllocationFilter()
|
Method Summary | |
---|---|
void |
closeConnection(Context ctx)
Close the connection. |
Pipeline |
filterRequest(String token,
Pipeline p)
Filter the request and decide which Pipeline to use. |
protected String |
getContextRoot(ByteBuffer byteBuffer)
Get the context-root from the ByteBuffer |
boolean |
invokeProtocolParser(Context ctx,
ProtocolParser protocolParser)
Invoke the ProtocolParser . |
protected boolean |
isPipelineInUse()
Check to see if the privileged pipeline are in-use right now. |
protected Pipeline |
newPipeline(int threadCount,
Pipeline p)
Creates a new Pipeline |
ProtocolParser |
newProtocolParser()
Return a new ProtocolParser>/code> or a cached |
Methods inherited from class com.sun.grizzly.filter.ParserProtocolFilter |
---|
execute, postExecute |
Methods inherited from class com.sun.grizzly.filter.ReadFilter |
---|
execute, isContinuousExecution, log, setContinuousExecution |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String BYTE_BUFFER
protected static final String RESERVE
protected static final String CEILING
protected static final String ALLOCATION_MODE
protected static final String RULE_TOKENS
protected static final String QUERY_STRING
protected static final String PATH_STRING
public static final String BYTEBUFFER_INPUTSTREAM
public static final String INVOKE_NEXT
protected static final ConcurrentHashMap<String,Pipeline> pipelines
Pipeline
configured based on the
threadRatio
. This Pipeline
is only used
by privileged application.
protected static final ConcurrentHashMap<String,Double> privilegedTokens
Pipeline
.
protected static double leftRatio
protected static String allocationPolicy
Constructor Detail |
---|
public ResourceAllocationFilter()
Method Detail |
---|
public boolean invokeProtocolParser(Context ctx, ProtocolParser protocolParser)
ProtocolParser
. If more bytes are required,
register the SelectionKey
back to its associated
SelectorHandler
invokeProtocolParser
in class ParserProtocolFilter
ctx
- the Context object.
public Pipeline filterRequest(String token, Pipeline p)
protected Pipeline newPipeline(int threadCount, Pipeline p)
Pipeline
protected boolean isPipelineInUse()
protected String getContextRoot(ByteBuffer byteBuffer)
ByteBuffer
public void closeConnection(Context ctx)
public ProtocolParser newProtocolParser()
ProtocolParser>/code> or a cached
- Specified by:
newProtocolParser
in class ParserProtocolFilter
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |