From 960844f72a11d1dd3a178c3381979990c46ef3e6 Mon Sep 17 00:00:00 2001 From: Alejo Thomas Ortega Date: Wed, 30 Aug 2023 17:56:56 -0300 Subject: [PATCH] docs: add README to consumer server (#52) --- consumer-server/README.md | 53 ++++-------------- .../docs/images/ab-converter-workflow.png | Bin 0 -> 69645 bytes 2 files changed, 12 insertions(+), 41 deletions(-) create mode 100644 consumer-server/docs/images/ab-converter-workflow.png diff --git a/consumer-server/README.md b/consumer-server/README.md index 9cf74a53..ee28b2ac 100644 --- a/consumer-server/README.md +++ b/consumer-server/README.md @@ -1,50 +1,21 @@ -# template-server +# Consumer Server -## Architecture +The **Consumer Server** is tasked with receiving deployment notifications from the [deployments-to-sqs](https://github.com/decentraland/deployments-to-sqs) service and handling them to facilitate efficient importing within WebGL environments. -Extension of "ports and adapters architecture", also known as "hexagonal architecture". +The initial deployments made to the Catalysts can be significantly optimized by re-importing all the `gltf` files and transforming them into AssetBundles. This optimization leads to accelerated importing and loading processes on the client-side. -With this architecture, code is organized into several layers: logic, controllers, adapters, and components (ports). +## Optimization Workflow -## Application lifecycle +As outlined in [deployments-to-sqs](https://github.com/decentraland/deployments-to-sqs), notifications for `wearables`, `emotes`, and `scenes` deployments are communicated through an AWS SNS topic named `deployments-sns-${env}`. This optimization can only be applied to deployments of these specific entity types. -1. **Start application lifecycle** - Handled by [src/index.ts](src/index.ts) in only one line of code: `Lifecycle.run({ main, initComponents })` -2. **Create components** - Handled by [src/components.ts](src/components.ts) in the function `initComponents` -3. **Wire application & start components** - Handled by [src/service.ts](src/service.ts) in the funciton `main`. - 1. First wire HTTP routes and other events with [controllers](#src/controllers) - 2. Then call to `startComponents()` to initialize the components (i.e. http-listener) +The Consumer Server continuously monitors the `ab-conversion-queue` SQS queue, which acts as a subscriber to the aforementioned SNS topic. Consequently, whenever a new deployment arrives in the queue, the server processes it and makes the resulting artifacts accessible through a Content Delivery Network (CDN). -The same lifecycle is also valid for tests: [test/components.ts](test/components.ts) +Upon completing the process of making artifacts available on the CDN, each entity will possess two distinct versions: +* The optimized variant residing within the CDN +* The original variant residing on the Catalysts -## Namespaces +Consequently, at the present moment, clients will primarily attempt to retrieve entity deployment artifacts from the CDN. If these artifacts cannot be located, the clients will proceed to acquire them from any available Catalyst source. -### src/logic +You may find below a chart detailing the current workflow to convert entities deployments: -Deals with pure business logic and shouldn't have side-effects or throw exceptions. - -### src/controllers - -The "glue" between all the other layers, orchestrating calls between pure business logic and adapters. - -Controllers always receive an hydrated context containing components and parameters to call the business logic e.g: - -```ts -// handler for /ping -export async function pingHandler(context: { - url: URL // parameter added by http-server - components: AppComponents // components of the app, part of the global context -}) { - components.metrics.increment("test_ping_counter") - return { status: 200 } -} -``` - -### src/adapters - -The layer that converts external data representations into internal ones, and vice-versa. Acts as buffer to protect the service from changes in the outside world; when a data representation changes, you only need to change how the adapters deal with it. - -### src/components.ts - -We use the components abstraction to organize our adapters (e.g. HTTP client, database client, redis client) and any other logic that needs to track mutable state or encode dependencies between stateful components. For every environment (e.g. test, e2e, prod, staging...) we have a different version of our component systems, enabling us to easily inject mocks or different implementations for different contexts. - -We make components available to incoming http and kafka handlers. For instance, the http-server handlers have access to things like the database or HTTP components, and pass them down to the controller level for general use. +![Workflow](./docs/images/ab-converter-workflow.png) diff --git a/consumer-server/docs/images/ab-converter-workflow.png b/consumer-server/docs/images/ab-converter-workflow.png new file mode 100644 index 0000000000000000000000000000000000000000..675f721b1e4a88aee53c3bfac25147b579d369f2 GIT binary patch literal 69645 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 G_5T6FMV74q literal 0 HcmV?d00001