Skip to content

Commit

Permalink
Merge pull request #153 from DavidZhiXing/master
Browse files Browse the repository at this point in the history
typos
  • Loading branch information
yingang authored Dec 14, 2021
2 parents 7cfa64a + 8f1b202 commit eefaef2
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion ch9.md
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@
![](img/fig9-5.png)
**图9-5 Web服务器和图像缩放器通过文件存储和消息队列进行通信,打开竞争条件的可能性。**

如果文件存储服务是线性一致的,那么这个系统应该可以正常工作。如果它不是线性一致的,则存在竞争条件的风险:消息队列([图9-5](img/fig9-5.png)中的步骤3和4)可能比存储服务内部的复制(replication)更快。在这种情况下,当缩放器读取图像(步骤5)时,可能会看到图像的旧版本,或者什么都没有。如果它处理的是旧版本的图像,则文件存储中的全尺寸图和略缩图就产生了永久性的不一致
如果文件存储服务是线性一致的,那么这个系统应该可以正常工作。如果它不是线性一致的,则存在竞争条件的风险:消息队列([图9-5](img/fig9-5.png)中的步骤3和4)可能比存储服务内部的复制(replication)更快。在这种情况下,当缩放器读取图像(步骤5)时,可能会看到图像的旧版本,或者什么都没有。如果它处理的是旧版本的图像,则文件存储中的全尺寸图和缩略图就产生了永久性的不一致

出现这个问题是因为Web服务器和缩放器之间存在两个不同的信道:文件存储与消息队列。没有线性一致性的新鲜性保证,这两个信道之间的竞争条件是可能的。这种情况类似于[图9-1](img/fig9-1.png),数据库复制与Alice的嘴到Bob耳朵之间的真人音频信道之间也存在竞争条件。

Expand Down

0 comments on commit eefaef2

Please sign in to comment.