You can perform background processing in Relativity by developing custom agents. Because these agents perform background work, they don't interfere with user activities performed through the Relativity UI. These agents aren't event driven so they have no dependency on user activity.
Additionally, you can implement agents as managers that monitor tasks or workers that perform specific jobs in your environment. You can develop custom agents to perform their background processes at configurable intervals. For example, Relativity uses agents to OCR documents.
Other common use cases include:
Using agents to make calls to third-party APIs.
Developing a mass updater, which is an agent triggered when a system admin clicks a console button. In this case, the agent updates a large number of items tied to some custom object. It sets up a job based on the workspace and the objects in the workspace that need to be updated.
Implementing a job scheduler, which is an agent that is used to execute nightly jobs. For example, you could implement an agent that builds your dtSearch indexes nightly.
Developing an email agent, which is used to send emails. This agent runs in the background making connections to the SMTP server, and performing other tasks.