Background processing · design walkthrough

A job accepted is not a job completed.

Follow work from an uploaded file through a queue to a worker and saved result. The important question is whether jobs finish correctly—even when delivery repeats.

Illustrative design · proposed checks have not run. No application, data or deployment is included.

Source → proposed target

Same application outcome.
Different operating model.

A synthetic document arrives, a worker processes it and a result becomes available. No production documents or messages are used.

Illustrative AWS sourceWhat the application depends on
ILLUSTRATIVE
  1. InputAmazon S3 uploadAn uploaded object creates work. Event routing and object access are explicit dependencies.
  2. DeliveryAmazon SQS queueWork waits for processing. Retry, visibility timeout and failed-message handling affect the result.
  3. Processing + resultAWS Lambda + DynamoDBA function processes the job and saves its status. Duplicate delivery must not duplicate the business effect.

Owned synthetic example · not customer infrastructure or observed traffic.

Proposed portable targetA target to validate
PROPOSED
  1. Input + deliveryObject store + durable queuePreserve the declared object, acknowledgement, redelivery and failed-job semantics.
  2. Processing + resultWorker service + result storeRun approved processing logic and keep a stable job identity across retries.

Proposed design · not deployed or tested as this application.

Preserve the outcome, not every AWS component.

Replace a function trigger with a worker service if the same job outcomes and delivery guarantees can be established.

What must still work

Checks that mean something to the team.

These are proposed acceptance criteria, not recorded results or a promise of current runner support.

1 · Required outcome

Complete a valid job

A made-up input produces the expected saved result within the agreed time window.

Proposed check · not run
2 · Required outcome

Handle redelivery safely

Delivering the same synthetic job twice does not repeat its business effect.

Proposed check · not run
3 · Required outcome

Make a failed job visible

A deliberately invalid input reaches the declared failed-job outcome instead of disappearing.

Proposed check · not run
Illustrative failure · not a measured result

The worker starts, but the result is written twice.

Review job identity, acknowledgement and idempotency before rerunning the duplicate-delivery check. Provisioning a queue does not prove delivery semantics.

Before relying on this design

What still needs validation?

  • Selected S3, SQS, Lambda and DynamoDB inventory/relationship patterns exist; they do not establish that this entire illustrated route was discovered or executed.
  • Cross-step job fixtures, duplicate-delivery, retry/time-window observations and the proposed target’s queue semantics need their own runner and mutation evidence.
  • The worker and stores shown here have not been deployed or tested as this application. Original application code remains subject to separate approval and isolation gates.
Check current AWS coverage →

What the handover should include

Application. Dependencies. Checks. Evidence.

A useful package needs approved application material, target configuration, a data plan, repeatable checks and deployment and cleanup instructions. This example does not include a runnable bundle.

Understand packages and evidence →