For a definition and overview of inference agents and their role within a cache cluster, see Inference Agents. This section provides more detailed information and instructions for inference agent configuration.For good performance, each inference agent also has a local cache, called the L1 cache, in addition to the distributed entity caches. An agent checks for an object first in the local cache. If an object is found there, the agent checks that it is current (comparing it with the object in the cache cluster). If the local object is current it is used, saving serialization time.You can configure the size of the cache. See Agent.AgentGroupName.l1CacheSize in Configuring Inference Agents—Engine Properties.All inference agents (across all agent groups) and all query agents in a cache cluster share access to the same set of cached objects, which is maintained for the cache cluster by the object management layer.Concepts, events, and scorecards are not shared in the same way. See Designing With Multiple Active Inference Agents. for more details.Note that when reading from cache, BusinessEvents first attempts to get data from the L1 cache. If the data is not available in this local cache, or it is not current, BusinessEvents retrieves the data from the cache cluster. If the data is not in the cache cluster, and a backing store is in place, the cache cluster transparently loads it from backing store and gives it to the requesting engine. (The agents do not interact with the backing store directly, except during recovery.)Each agent in the cluster has an AgentTxn-agentId cache. (The agentId is internally generated.) This cache stores the change list for the agent. All changes to objects that occur in one RTC are grouped into one change list, or transaction.All agents in the same group subscribe to the other agent’s changes using this cache. They apply those changes to their working memories, so that the working memory of all agents stays synchronized.See Designing With Multiple Active Inference Agents for more information on the effect of multiple agents on project design and on runtime behavior.When an agent group is configured to have one or more inactive members, those agents act as secondary agents ready to take over in the event of failure of other agents. See Fault Tolerance Between Inference Agents in a Group for an overview.
Copyright © TIBCO Software Inc. All Rights Reserved.