amazon-web-services - DynamoDB 最终一致性读取 vs 强一致性读取
问题描述
我最近了解了 DynamoDB 的两种读取模式。但我不清楚什么时候选择什么。任何人都可以解释权衡吗?
解决方案
基本上,如果您需要拥有最新值,请使用完全一致的 read。您将获得保证的当前值。
如果您的应用程序可以接受可能过时的信息(仅几秒钟或更短时间过时),则使用最终一致的读取。
完全一致的例子:
- 银行余额(想知道最新金额)
- 机车在火车网络上的位置(需要绝对确定以保证安全)
- 股票交易(需了解最新价格)
最终一致读取的用例:
- Facebook 朋友的数量(是否在最后几秒钟内添加了另一个朋友是否重要?)
- 在过去 5 分钟内使用特定闸机的通勤者人数(如果少数人外出则不重要)
- 股票研究(没关系,如果它出来几秒钟)
推荐阅读
- javascript - 我可以用 css 或 javascript 伪造我的屏幕宽度吗?
- java - 我的 CSES 问题静态范围和查询代码中的错误是什么
- django - 如何使用 django manager 的原始方法执行更新操作?
- git - 带有 ssh 地址的 Git 克隆失败
- mysql - UnicodeDecodeError:“utf-8”编解码器无法解码位置 180 中的字节 0xa0:无效的起始字节
- blazor - 使用 Blazor 时如何禁用 ENTER 键按下提交按钮
- java - 为什么 Eclipse 删除“自动构建”标志?
- image - 将原始DICOM图像转换为NIfTI图像后,蒙版无法匹配原始图像
- css - ReactJS 路由器 - 覆盖默认字体、大小写和颜色
- python - TypeError: 必须是实数,而不是 str。但是 int/float 中的数据