1. A method comprising: receiving, by a processing device executing a transaction manager, a request to initiate a new transaction; identifying, by the processing device, one or more components of a distributed computing system that will be used by the new transaction, the one or more components including hardware components and software components that operate on the hardware components; determining a timeout period to apply to the new transaction based on properties of the one or more components and a current resource utilization of the one or more components; and initiating the new transaction, wherein the determined timeout period is assigned to the new transaction.