Skip to content

Commit e7d17e4

Browse files
committed
feat: update diagrams for talktofrank and active10
1 parent bd72dc1 commit e7d17e4

4 files changed

Lines changed: 5 additions & 49 deletions

File tree

source/documentation/services/active10.html.md.erb

Lines changed: 2 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -13,29 +13,8 @@ The app follows the [standard pattern](documentation/guides/standard-pattern).
1313

1414
## Architecture Overview
1515

16-
```mermaid
17-
graph TD;
18-
User[User Request]
19-
ALB[Application Load Balancer]
20-
CMS[ECS Fargate Task - CMS]
21-
Backend[ECS Fargate Task - Backend]
22-
RDS[PostgreSQL RDS]
23-
SNS[SNS Topic]
24-
SQS[SQS Queue]
25-
Lambda[Lambda Functions]
26-
MediaCloudfront[Static assets Cloudfront]
27-
Redis[Redis Cache]
28-
MediaS3[S3 Media Bucket]
29-
GlueBucket[S3 Glue Bucket]
30-
31-
User --> ALB --> CMS --> RDS
32-
User --> ALB --> Backend --> RDS
33-
User --> MediaCloudfront --> MediaS3
34-
Backend --> SNS --> SQS --> Lambda --> RDS
35-
Backend --> SNS --> SQS --> Lambda --> GlueBucket
36-
Backend --> RDS
37-
Backend --> Redis
38-
```
16+
![Active 10 architecture diagram](/images/active10-architecture.png)
17+
3918

4019
## Components
4120

source/documentation/services/talktofrank.html.md.erb

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,9 @@ For the 'Find a support centre' feature, Google's [Geocoding API](https://develo
1515

1616
Analytics are captured using self-hosted [Matomo](https://matomo.org/) which runs in ECS containers.
1717

18-
---
19-
2018
## Architecture Overview
2119

22-
```mermaid
23-
graph TD;
24-
User[User Request]
25-
CloudFront[CloudFront]
26-
ALB[Application Load Balancer]
27-
ECS[ECS Fargate Task]
28-
Matomo[ECS Fargate Task]
29-
OpenSearch[AWS OpenSearch]
30-
Geocode[Google Geocode API]
31-
Contentful[Contentful API]
32-
MySQL[RDS DB]
33-
34-
35-
User --> CloudFront --> ALB --> ECS --> OpenSearch
36-
ECS --> Geocode
37-
ECS --> Contentful
38-
User --> Matomo
39-
Matomo --> MySQL
40-
```
41-
---
20+
![Talk to Frank architecture diagram](/images/talktofrank-architecture.png)
4221

4322
## Components
4423

@@ -53,9 +32,9 @@ graph TD;
5332
- Terraform code defining AWS infrastructure for all environments.
5433

5534
### Matomo
56-
Self-hosted [Matomo](https://matomo.org/) is used for analytics. It runs in both staging and production.
35+
Self-hosted [Matomo](https://matomo.org/) is used for analytics. It runs in both staging and production. The Matomo instance uses a MySQL RDS database and EFS storage for sharing application config data between the containers.
5736

58-
---
37+
There is a scheduled ECS task that runs the Matomo archiver every hour.
5938

6039
## Environments
6140

@@ -65,8 +44,6 @@ Self-hosted [Matomo](https://matomo.org/) is used for analytics. It runs in both
6544
| **Staging** | https://staging.talktofrank.com |
6645
| **Preview** | https://preview.talktofrank.com |
6746

68-
---
69-
7047
## Email
7148

7249
Emails to `frank@talktofrank.com` are received by Amazon SES. This puts the emails into an S3 bucket which then triggers a Lambda function. The Lambda function code is in the [IaC repo](https://github.com/ukhsa-collaboration/talk-to-frank-iac/blob/main/applications/app/modules/ses/src/index.py) as it is temporary. This Lambda checks if SES has flagged the email as spam. If it is marked as spam then the Lambda moves the email from `{bucketname}/mailbox/frank@talktofrank.com` to `{bucketname}/processed/frank@talktofrank.com`.
80.5 KB
Loading
40.2 KB
Loading

0 commit comments

Comments
 (0)