我工作的一个项目来管理的文件(如:创建,读取,维护不同版本等...),我的计划是使用以下AWS架构。如何解决最终一致性问题在AWS上
在创建文件/更新它将被保存在通过API网关代理S3版本启用S3桶。 S3 put事件将触发一个lambda获取最新版本和所有版本ID并将其保存到DynamoDB。一旦将其保存在DynamoDB表中,它将通过DynamoDB流在Elasticsearch中索引。
我的计划是对所有搜索查询使用Elasticsearch。我将从DynamoDB中加载最新的文档。由于每个记录都有S3版本ID,我也可以从S3查询旧版本。由于我的架构依赖于最终的一致性(即S3到DynamoDB和DynamoDB到弹性搜索),我担心在创建文档后查询Elasticsearch或查询DynamoDB时,我不会获取最新的文档数据。
任何改进建议将不胜感激。
谢谢!