book
Article ID: KB0091194
calendar_today
Updated On:
Description
Resolution:
Description:
============
In a flow controlled environment (such as KPSA), having a synchronous network element responding slowly (more than 10 seconds for instance) can have a direct impact on application performance because:
1). The session acquisition request grows for the corresponding cartridge.
2). Orders waiting for a session on this cartridge will pile up in POP.
3). If there are too many of them (depending on Work Order usage/frequency) waiting, the application throughput will decrease (since the number of Orders in processing at a time is limited by the flow control, even if they are waiting in POP).
Environment:
===========
Solaris / Linux
Symptoms:
========
Overall throughput and performances are degraded, not only for Orders executing Work Orders on this network element but for all Orders. According to the maxWaitingRequest and getSession timeout parameters of the corresponding cartridge will have a direct impact on the time spent by Orders waiting in POP and decreasing the flow control efficiency.
Resolution:
==========
A specific feature of KPSA has been implemented to handle slow network elements. The KPSA Cartridge framework can monitor the cartridge average response time and can detect when it starts to respond slowly. The Orders needing a session of this cartridge are then caught in POP and put into an internal queue called Slow Queue, allowing the flow control to work on other Orders. When a session for this cartridge is released, the oldest Order of the Slow Queue is dequeued and re-injected into POP for processing. When the cartridge average response time retrieves normal performance, the KPSA cartridge framework stops this specific behaviour and flushes the Slow Queue for resuming the remaining Orders.
The following describes how to enable the SlowNE feature in your application :
1). In your KPSA flow, the attribute "handleSlowNE" of the "pop" module has to be set to true.
2). In your cartridge, when configuring the type you have to set the parameter "PerfMonitor" to "SimplePerfMonitor" as follow : "PerfMonitor=SimplePerfMonitor".
3). In you cartridge, when configuring the instance you have to specify the threshold under which the equipement is considered as slow using the parameter "PerfMonitorThreshold". You can also protect the equipement by decreasing the number of session used by KPSA using the parameter "NumberOfSessionWhenSlow".
Handling Slow Network Elements is documented in the idlosdocs of pop and cartplugin packages.
Issue/Introduction
Configure KPSA cartridges for synchronous slow equipment (handleSlowNE).