1. A system to perform distributed transaction processing, comprising: a plurality of resources that are associated with one or more transactions; a transaction manager on one or more server, wherein the one or more server manages a thread pool with a plurality of server threads, and wherein the transaction manager uses the thread pool to perform transaction operations on the plurality of resources, wherein the transaction operations are in different groups and each transaction operation in each group targets to a transaction operation on one of the plurality of resources, wherein, for each group of the transaction operations on the plurality of resources, the transaction manager dispatches all but one of the transaction operations in the group to available server threads except a primary thread, wherein the primary thread process the remaining one transaction operation and receives signals from the other server threads that indicate the completion of dispatched transaction operations before the transaction manager dispatches a next group of transaction operations.