...
- The search index is updated to reflect entity update.
- The entity replication data used for Views must be updated.
- A new snapshot of the Entity must be taken for auditing.
- If the update is a move of a Folder Entity, the update must cascade to all of the children of the folder.
In this example, each type of indirect work is handled by a separate type of worker. Therefore, a single update event must be broadcast to multiple workers, with each performing independent tasks. Amazon's Simple Notification Service (SNS) is leveraged to facilitate the broadcast to multiple workers all working independently of each otherof each event to multiple workers.
When a users updates an entity, a single message is published to 'prod-<stack-number>-reop-ENTITY' SNS topic after the update transaction commits. No messages are published for failed transactions. The above screen shot shows four Amazon Simple Queue Service (SQS) queues, one for each worker, that subscribe to the 'prod-188-repo-ENTITY' topic. When a message is pushed to the entity topic, a copy of the message is automatically pushed to each subscribing queue. Each worker can then process messages from its own queue independently of all other indirect workers, at is own pace.