@@ -90,15 +90,13 @@ C4Container
9090 Container_Boundary(c1, "Warehouse & Supporting Systems") {
9191 Container(camo, "Camo", "image proxy")
9292 Container(web_app, "Web", "Python (Pyramid, SQLAlchemy)", "Delivers HTML and API content")
93- SystemQueue(sqs, "AWS SQS", "task broker")
9493 SystemDb(opensearch, "OpenSearch", "Index of projects, packages, metadata")
9594 SystemDb(db, "Postgres Database", "Store project, package metadata, user details")
9695 SystemDb(redis, "Redis", "Store short-term cache data")
9796
98- Rel(web_app, sqs, "queue tasks")
9997 Rel(web_app, opensearch, "search for projects")
10098 Rel(web_app, db, "store/retrieve most data")
101- Rel(web_app, redis, "cache data")
99+ Rel(web_app, redis, "cache data & task queue ")
102100 }
103101
104102 Rel(endUser, camo, "load images from project descriptions", "HTTPS")
@@ -126,10 +124,7 @@ C4Container
126124 System(s3, "AWS S3", "Object store (archive)")
127125 Rel(web_app, s3, "stores package files")
128126
129- SystemQueue(sqs, "AWS SQS", "task broker")
130- Rel(web_app, sqs, "queue sync to cache task")
131-
132- SystemDb(redis, "Redis", "Store short-term cache data")
127+ SystemDb(redis, "Redis", "Store short-term cache data, task broker")
133128 Rel(web_app, redis, "get/set rate limits and cache data")
134129 }
135130
@@ -142,7 +137,7 @@ Our workers use Celery to run tasks.
142137We run a single worker type, feeding off multiple queues.
143138We also use Celery Beat to schedule tasks.
144139
145- We currently use AWS SQS as the queue,
140+ We currently use Redis as the queue,
146141and Redis as the result backend and schedule storage.
147142
148143``` {mermaid}
@@ -152,21 +147,19 @@ C4Container
152147
153148 Container_Boundary(c1, "Supporting Systems") {
154149 SystemDb(redis, "Redis", "Store short-term cache data")
155- SystemQueue(sqs, "AWS SQS", "task broker")
156150 SystemDb(opensearch, "OpenSearch", "Index of projects, packages, metadata")
157151 SystemDb(db, "Postgres Database", "Store project, package metadata, user details")
158152 System(ses, "AWS SES", "Simple Email Service")
159153 }
160154
161155 System_Ext(fastly, "Fastly", "Content Delivery Network")
162156
163- BiRel(worker, sqs, "get next task/ack")
164- BiRel(worker, redis, "store task results")
157+ BiRel(worker, redis, "get next task/ack")
165158 BiRel(worker, db, "interact with models")
166159 BiRel(worker, opensearch, "update search index")
167160 Rel(worker, fastly, "purge URLs")
168161 Rel(worker, ses, "send emails")
169162
170163 BiRel(worker_beat, redis, "fetch/store task schedules")
171- Rel(worker_beat, sqs , "schedule tasks")
164+ Rel(worker_beat, redis , "schedule tasks")
172165```
0 commit comments