> For the complete documentation index, see [llms.txt](https://knowledgebase.fabricdata.com/fabric-knowledge-base/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://knowledgebase.fabricdata.com/fabric-knowledge-base/support/infrastructure/architecture-overview-diagrams-and-components.md).

# Architecture - Overview, Diagrams and Components

<figure><img src="https://1453363788-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPS7xvtVOuEwjKjl1m1Xs%2Fuploads%2F50i62wDDcXbuv64MMhPM%2Fimage-20230216-155829.png?alt=media&amp;token=e4606525-5b86-4b9a-919a-c57ba0830768" alt=""><figcaption></figcaption></figure>

## **Main Components**

Fabric is a web-based application consisting of 4 main Components:

### 1. Front End “Fabric”

Fully Serverless hosted on CloudFront Distributions + Lambda Functions

### 2. AWS API Gateway

Used for Communication between Front End and Back End and any External Integrations

### 3. Back End “Record Service” (plus others)

Hosted on Highly Available, Auto-Scalable EC2’s

### 4. Database

Highly Available RDS Instance. A Fabric environment can have up to 3 RDS instances

* Primary Instance for transactional processing\
  &#x20;   i. Standby in the region for high-availability
* Standby for High-Availability
* Read/Write Replica outside the region for Supporting the Advanced Reporting Engine and Disaster Recovery

## **Other Services**

Other Services included in the entire application Stack Include:

### Simple Notification Service (SNS)

Notification and Communications for:

* Internal Services
* Internal and External Integrations

### Simple Queue Service (SQS)

* Consumption of Notifications and Events for processing

### Simple Email Service

### Advanced Reporting Engine

* Built using Google's Looker Engine

***

<details>

<summary>Related Articles</summary>

* [AWS Cloud Hosting](/fabric-knowledge-base/support/infrastructure/aws-cloud-hosting.md)
* [Releases](/fabric-knowledge-base/support/releases.md)
* [Security](/fabric-knowledge-base/support/security.md)

</details>
