2:反馈响应:参与者在接收到来自协调者的canCommit请求后,正常情况下,如果其自身认为可以顺利执行事务,那么会反馈Yes响应,并进入预备状态,否则反馈No响应....abort请求
2:中断事务:无论是接收到了abort请求,还是等待时接收超时,参与者都中断事务
注意,完成阶段二之后,如果参与者在一定时间没有收到阶段三消息,触发超时后会自动提交
阶段三:doCommit...1:发送提交请求:协调者在收到所有正常响应后,它将转换到"提交"状态,并向所有的参与者发送doCommit请求
2:事务提交:参与者在收到doCommit请求后,正式提交事务,并在完成之后释放事务所占用的资源...3:反馈事务结果:参与者提交事务后,向协调者发送ACK消息
4:完成事务:协调者接收到所有ACK消息后,完成事务
中断事务
假如协调者接收到了No响应或者长时间没有接收到所有参与者的响应,则进入中断事务状态...缺点:如果参与者收到了 preCommit 消息后,出现了网络分区,那么参与者等待超时后,都会进行事务的提交,这必然会出现事务不一致的问题。