1. A method for tolerating failures using concurrency in a clustered data processing environment, the method comprising: detecting a failure in a first computing node, the first computing node serving an application in a cluster of computing nodes; selecting a subset of actions from a set of actions, the set of actions configured to transfer the serving of the application from the first computing node to a second computing node in the cluster; reordering the set of actions such that the subset of actions can be performed before a second subset of actions in the set of actions; setting a waiting period for the first computing node; allowing the first computing node to continue serving the application in the cluster during the waiting period; performing during the waiting period, concurrently with the first computing node serving the application, the subset of actions at the second computing node; and aborting, responsive to receiving a signal of activity from the first computing node during the waiting period, the concurrent operation of the second computing node in the cluster.