Asynchronous compute architecture brief

Asynchronous Neon Generator

A design for moving long-running 3D rendering work behind a queue so web requests stay fast while compute runs only when needed.

Status Architecture brief
AWS focus
SQSECS FargateS3SES
AWS
Upload request
API
API Gateway API Gateway
SQS
S3 input object + SQS job SQS
ECS
ECS Fargate renderer ECS
S3
S3 output object S3
SNS
Notification with expiring link SNS

Problem

Generating a 3D-printable neon sign file can take longer than a normal synchronous API request should remain open. The architecture needs to accept work quickly, process it asynchronously, and avoid idle compute cost.

Design

  • The frontend uploads an input asset to S3 using a controlled path.
  • A job message lands in SQS with the object key and requested output options.
  • Fargate runs a containerized renderer only while jobs exist.
  • The output is written back to private S3 and delivered through a short-lived URL.

Tradeoff

Lambda may be attractive for a simple demo, but large native rendering dependencies and variable runtime make a container task a cleaner boundary. The cost-control decision is to scale workers to zero between jobs.