Architecture

HPA is based on the Introscope APM product. An APM aims to record metrics on the internal behavior of an application without modifiying the source code.
The main components are :
- An agent, installed on the same server that host the application, here Calypso
- An external server to store the data in the EntepriseManager and consult metrics through the HPA portal & webview
Agent does not store any data on the Calypso server (except a few log files), data is sent over the network every 15s.
Agent is a 150MB archive to unzip, it starts with each JVM by adding new arguments to the command line.
Technical architecture
Here is a high level architecture schema for the HPA Portal solution.
The main flows are :
- 
HPA Calypso agenttoEM: metrics are recorded on the agents and stored in the Introscope datastorage.
- 
End usersrequests a dashboard on theHPA portal: the request is sent to HPA portal client or server (this is an Single Page Application and use XHR requests)
- 
HPA Portalserver request the data toHPA extractorand aggregate it for the dashboards
- 
HPA Extractorget the metrics fromEMor its local database.

End user connects to HPA portal, it exposes a single page application that loads the dynamic content using XHR requests.
The HPA portal server itself does not consume Introscope API directly. A middle layer, the HPA extractor, is used to gather the data, it exposes a standard REST API for the HPA portal server. This API cover :
- Text metrics read in HPA postgresql
- Numerical metrics through APM SQLServer.
The HPA extractor must be as close as possible to the Introscope API (APMSQL/EM) because it extracts a lot of data, aggregates it before building the responses. The network bandwidth is critical between Extractor and EM.
The requirements for the installation of this architecture are described in the next section
Flows
The flow are based on different protocols :
- HTTP REST between HPA portal components
- HTTP SOAP for Introscope API
- JDBC for Introscope APMSQL
- Specific binary protocol between agent and Introscope EM
- All ports can be modified
- All listening IP can be modified
- All flows can go through proxies
- All flows support TLS
See Firewall rules
User interfaces
There are many user interfaces as the product is based on Introscope APM.
Introscope APM offers two GUI :
- Teamcenter and webview, accessible from a browser
- Workstation, a fat client (available on Windows or Linux), used for some specific alert configuration
The HPA portal exposes its own GUI.