Frends Agents or remote integration runtimes are the component in Frends that actually executes the generated integration code and can be deployed to any cloud or ground infrastructure.
Agent Architecture
All Frends Agents have three major architectural layers, which work together to enable the Agent to expose API's, provide API Gateway functionality and to run all other kinds of integrations remotely inside the deployed Agent.
Control Layer
Trigger Layer
Execution Layer
Control Layer
The Agent's control layer is used to communicate with the central management portal using Azure Service Bus queues. These queues are used to update the Agent's configuration, start integration flows manually, deploy integration flows and to report monitoring data back to the central management portal.
Trigger Layer
The trigger layer is used to expose for example API Endpoints on the Agent or to start scheduled integrations. The main function of the trigger layer is to be responsible for the triggering of the integration flows themselves.
Execution Layer
After an integration has been triggered in the trigger layer, the trigger layer starts a process execution of the actual compiled integration flow code, which uses the Control Layer to report monitoring data back in real time while the integration flow is executing.
Agent Requirements
Each Frends Agent can be deployed to:
Traditional Windows and Linux servers
Docker or Kubernetes as Containers
Additionally each Frends Agent only requires outbound internet connectivity to work, so no inbound ports need to be opened as the Agent's are only connecting towards the central control panel and the control queues in Azure.