消息投递中的可达性保证,一般是三种方案分别为:at most once(至少一次),at least once(至多一次),exactly once(恰好一次)。
at most once:在消息投递中每个消息投递0次或者1次,存在数据丢失的风险;
at least once:保证每个消息会默认投递多次,至少保证有一次被成功的执行,存在消息重复的情况;
exactly once:每个消息恰好被投递一次且投递成功,保证数据不会被丢失和重复。
每一种方式都是在性能和效率中进行博弈与选择,具体的数据场景使用不同的方式。