思路:生产者发送消息并行执行事务单元。执行成功确认消息发送,消息可见状态。执行失败,进入check回调。如果一开始发送消息失败,进入消息check回调。MQ自己维护了一个消息的状态表从而确保消息的可靠性投递。