The application has been designed to operate in a distributed environment. To achieve this, it has been split into a number of key components, the Central Application, Remote Agent, Outlook Plugin and Workstation Agent. While the diagram below may appear to be overly complex, it shows all possible permutations of a distributed environment. In practice only a small subset of this topology would be implemented and this would be dependant on the source and destination messaging systems, plus the infrastructure available.
The central application is comprised of a number of distinct technologies and is shown as the Application Server and Database Server in the diagram above:
- Web Application – The web application presents the screens that permit the administrator to manage the application and initiate discovery and ingestion functions. Hosted in IIS 6 or later, the web application includes a number of web-services that are consumed by the remote agents, outlook plugin and workstation agents.
- Scheduler Service – A Windows service that hosts a number of scheduled tasks and is installed at the same time as the web application is. Processes contained within this service allow functions such as regular status messages to be sent and data synchronisation to be performed.
- Database – The database contains the archive list and history, as well as settings that allow the application to operate.
The remote agent is a Windows service that is delivered as a self-contained MSI package, allowing it to be deployed manually or automatically via, for example, Microsoft™ SCCM. One or more remote agents are installed into the Enterprise and then configured to perform a selection of distinct roles via the central application::
- Discovery – Network bandwidth and infrastructure limitations are taken into account when deploying the remote agents for discovery purposes. The discovery process trawls the source system in order to identify archives and / or folders. This can be very IO intensive and it is recommended that one remote agent is deployed onto each source server. This not only optimises disk access, but also minimises network traffic between the remote agent and the system. Where the remote agent cannot be installed onto the source server, the remote agent can be deployed onto a nearby server and configured for remote scanning.
- Ingestion – At a minimum, one remote agent must be installed onto each target server so that the ingestion process is able to operate. Should it be undesirable to install directly onto the archive server, then the remote agent can be installed onto an alternative machine that will act on behalf of the archive server. However, this will slow down throughput as an additional hop for data transfer is introduced.
This runs in the logged on users context and will record any PST files that are attached to the current Outlook profile. Because of potential permissions issues, it will not attempt to find other PST files located on the local storage in, for example, another user’s profile directory. It can then also be configured to move or copy messages from a source to destination archive attached to the profile.
The Workstation Agent is a lightweight EXE that can be run in the users context via, for example, the autoexec.cmd or RunOnce registry key. It performs a full scan of all local drives that the user has access to and then exits.