Architecture Overview
Fargate architecture overview
The below image outlines the high-level architecture of Tines Stories when hosted with AWS Fargate.

Tines Fargate architecture overview.
Explanation of steps
R1: The user's browser or a webhook initiates a request
R2: TLS Termination happens at a load balancer level
R3: From the load balancer, the traffic is sent to the Tines web services,
tines-appR4:
tines-appwhich is a web service, communicates with PostgreSQL for storing and reading persistent dataR5:
tines-appthen schedules background jobs to process any action runs in a Tines Stories story. it enqueues the job details in RedisR6:
tines-sidekiq, which is a background queue service, then picks up the jobs that are enqueued in Redis and performs further processing. tines-sidekiq then picks up jobs that are enqueued in Redis and performs further processingR7:
tines-sidekiqcommunicates with PostgreSQL for storing and reading persistent dataR8: For HTTP Request actions configured to use command-over-HTTP,
tines-sidekiqconnects to the dedicatedcommand-over-httpservice on port 80 or 443.R9:
tines-appandtines-sidekiqaccordingly make requests to external APIs and endpoints for further processing in a story and actionsR10:
tines-appandtines-sidekiqcalltines-command-runneron port 4400. Run script actions are invoked from Sidekiq. Apps builds are invoked fromtines-app. Both must reach the sametines-command-runnerserviceR11:
tines-command-runnermay callpypi-serveron port 8080 for Python packages, and the npm registry (or a configured mirror) for apps builds