Dequeuer

2025-10-28 | ๐Ÿ“‘ 0 words | โฑ 0 mins | ๐Ÿงพ History | โœ Tom D'Roza | ๐Ÿ”‘ Ross Buggins

๐Ÿšง This page has less that 200 words. So it looks like this page is still under construction.

Known Issues / Todo

  • โ›… This page is draft and is subject to rapid change, and may not be fully accurate or complete

Events Consumed

Events Produced

Diagrams

c4code-printer-removefromqueue

Manage TTL
C4:
Link to this diagram directly: /nhs-notify-digital-letters/diagrams/c4code-printer-removefromqueue.html
architecture-beta
   group manageTTL(cloud)[ManageTTL]
   service pollEvent(aws:res-amazon-eventbridge-event)[TTLPollTimerExpired Event]
   service manageLambda(logos:aws-lambda)[Poll TTL] in manageTTL
   service manageDb(aws:arch-amazon-dynamodb)[ItemsWithTTL] in manageTTL
   service ttlStream(aws:res-amazon-dynamodb-stream) in manageTTL
   service manageTtlExpiry(logos:aws-lambda)[HandleTTLExpiry] in manageTTL
   service printTTLExpired(aws:res-amazon-eventbridge-event)[ItemDequeued Event]

   pollEvent:R --> L:manageLambda
   manageLambda:R --> L:manageDb
   manageDb:R --> L:ttlStream
   ttlStream:B --> T:manageTtlExpiry
   manageTtlExpiry:R --> L:printTTLExpired

sequence-expire-print-ttl

C4:
Link to this diagram directly: /nhs-notify-digital-letters/diagrams/sequence-expire-print-ttl.html
sequenceDiagram
  participant eb as Event Bridge
  participant expireTTL as Lambda<br/>PollTTL
  participant dynamo as DynamoDB
  participant stream as DynamoDB Stream
  participant processTTLExpiry as Lambda<br/>HandleTTLExpiry

  alt Dynamo auto-expires after TTL
    dynamo ->> dynamo: TTL expires
    dynamo ->> stream: TTL expired
    stream ->> processTTLExpiry:
  else Polling Lamba deletes after TTL
    eb ->> expireTTL: TTLPollTimeExpired Event
    expireTTL ->> dynamo: Delete items with expired TTL
    dynamo ->> stream: TTL expired
    stream ->> processTTLExpiry:
  end
  processTTLExpiry ->> processTTLExpiry: Filter unread attachments
  processTTLExpiry ->> eb: ItemDequeued Event