System Settings SLA
System Settings SLA
System Settings SLA
This document may include references to Pegasystems product features that have
not been licensed by your company. If you have questions about whether a
particular capability is included in your installation, please consult your
Pegasystems service consultant.
For Pegasystems trademarks and registered trademarks, all rights reserved. Other
brand or product names are trademarks of their respective holders.
For more details on the System Settings, please reference the following tech notes:
System Settings
System Settings (instances of Rule-Admin-System-Settings) are constants stored in rule
instances.
As with other rules, the System Settings which are shipped in the standard ProCom
RuleSets are locked and cannot be changed. However, as they are rules, Rule
Resolution will apply; if they need to change a value for the System Settings, application
developers can save the System Setting rule to a higher-level RuleSet in the application
and change its value. When the application is run, the rule in the higher-level RuleSet will
override the one in the locked PegaRULES RuleSet (as always).
Due to the fact that they are not shipped as rules, the Dynamic System Settings do not
have the five-level structure that is available in the System Settings rules. Instead, there is
only one value.
CONFIDENTIAL 3
SLA settings
SLA settings
The SLA settings have a different structure than some of the other settings, as they are
present both as System Settings (Rule-Admin-System-Settings - the rules shipped with
the system which cannot be changed by the customer), and as Dynamic System Settings
(Data-Admin-System-Settings - which the customer may tune). The application
developer should determine how the SLA agent should process assignments, and adjust
the Dynamic System Settings accordingly.
If present, the SLA Dynamic System Settings will override the System Settings values. If
the Dynamic System Settings are not present, the system will read the SLA System
Settings instances, and then create SLA Dynamic System Settings with those default
values.
By default, the SLA activity runs every 30 seconds to process assignments. The
application developer should tune the SLA processing to be most efficient, by determining:
CONFIDENTIAL 4
SLA settings
Multi-Node Processing
If Process Commander is running in a multi-node environment, a large number of
assignments to process can cause contention between different agents trying to process
the same assignments. If the SLA agent on Node A retrieves 100 assignments to
process, it may successfully process the first one or two. However, at that point, the Node
B SLA agent wakes up and also retrieves 100 assignments, including many of the ones
which the Node A agent is trying to process. Now when Node A tries to process the next
assignment, it may discover that the assignment is locked by Node B for processing. If
there are a number of different nodes, each with their own SLA agent, the contention
between agents for assignments can waste a lot of resources.
After the agent has successfully processed one of the three assignments, it “refreshes” its
list by going back to the full queue of assignments to retrieve another three. (NOTE: It is
possible that if the very first assignment was processed, and no other agents have
processed any assignments in the meantime, that the 2nd and 3rd assignments picked up
in the first retrieve will be picked up again; however, it is much more likely that other
agents from the other nodes in the system have run, so it will actually pick up completely
new assignments.) It processes one of these new three assignments successfully, and
then refreshes again, following this procedure until it has successfully processed 10
assignments. At this point, it stops, and waits for the next agent interval.
The refreshing procedure means that the agent has more up-to-date information on the
assignments to process. For example, the Node A agent may pick up assignments 1, 2,
and 3. It successfully processes #1, and then refreshes. In the meantime, the Node B
agent has also picked up assignments 1, 2, and 3. It can’t process #1 (as it is locked for
processing by Node A), so it processes #2, and then refreshes. When Node A refreshes,
it now picks up #3, #4, and #5, because Node B processed #2. This means that Node A
doesn’t waste time trying to process #2, which was locked and then completed by Node B.
CONFIDENTIAL 5