An agent is an internal background process operating on the server that runs activities on a periodic basis. Agents route work according to the rules in your application; they also perform system tasks such as sending email notifications about assignments and outgoing correspondence, generating updated indexes for the full-text search feature, synchronizing caches across nodes in a multiple node system, and so on.
Agents are autonomous and asynchronous: the activities they call run individually on their own schedules, and a second activity execution can start before one started earlier completes.
Agents are defined by Agents rules (Rule-Agent-Queue rule type). Agents are enabled and scheduled through Agent Queue data instances (Data-Agent-Queue class). In a multinode cluster, an agent can run on multiple nodes — even each node, to achieve high throughput, if potential deadlock and similar locking issues are correctly handled by the activities.
A legacy agent — one for which the Queue Mode setting on the Schedule tab is Legacy
— is an agent that does not use queues, but processes each item to completion in a single pass. Agents created in releases before V5.4 first appear as legacy agents in later releases, until they are upgraded to Standard
.
Your system contains nine (or more) agents rules when initially installed. This help system contains a topic for each.
In releases before V5.4, agents rules were known as agent queue rules.