严格一次
关于是否可以做到严格一次传递(exactly-once delivery)指的消息只严格传递一次到接收方并能成功被接收方处理。
至少一次
由于链路故障可能导致传递消息的第一次尝试无法成功,因此大多数实际的系统都采用至少一次传递(at-least-once delivery),它确保了发送方将重试直到收到确认为止,否则就认为对方没有收到该消息。
最多一次
最多一次(at-most-once):发送方仅仅发送消息而不期待得到任何确认。
什么是共识?
为了确保严格一次传递,各节点需要一个共识:每个节点都知道某件事,每个节点都知道其他所有节点也都知道这件事。