The control pool contains one or more servers. These host:
- Scheduling service—runs periodic tasks at set intervals.
- Database service—provides permanent storage of LGTM data.
- File storage service—provides storage of frequently accessed data. This gives immediate access to repositories in LGTM format, recent build/analysis log files, unprocessed job results, and the latest snapshot for each project (used by the query console).
- Message queue service—manages work. The associated job dealer ensures that build/analysis jobs are processed by a suitable worker.
- Search service— provides help search functionality.
- Web pool which runs:
- Web application—handles requests to the LGTM web interface and also processes the results of tasks and jobs.
- Web proxy service—acts as a proxy and SSL terminator for the LGTM web interface.
For more information about these services, see Services.
The server that hosts the scheduling service is referred to as the coordinator. If the control pool components are distributed across multiple servers, it is important to know which server is the coordinator because LGTM command-line actions must be run from this server.
The arrow directions on the diagram give an indication of data flow between system components.