A user queries the Service Location Server to get a list of available hosts and their current prices. The user selects hosts from this list based on the application's requirements and the user's available funds.
The user then creates host accounts on the selected hosts. This creates virtual machines (complete with private file system), sets the initial bids, and transfers the initial funding to pay for resource usage.
As long as the user does not have strict resource requirements and demand on the hosts does not change significantly, the user does not need to alter the bids. By default, the bid duration is 1 billion seconds (31.7 years), so users do not need to worry about bid expiration.
However, one of the following may occur, requiring a new bid:
The user's current application resource requirements change. This results in an surplus or deficit of resources. For example, a web server may experience a very high load (e.g., the SlashDot effect) and need more resources to serve requests with low latency.
The user's income changes. This results in a surplus or deficit of currency to spend on resources. For example, a user's organization's resources become very popular, which provides more income for the users, who can now spend more on their applications.
Demand on the system changes because one of the above occurs to another user, because users arrive or depart, or because providers add or remove resources. This changes the share of resources given to the user's host accounts, resulting in an surplus or deficit of resources. For example, the local energy utility raises the price of electricity, causing a Tycoon resource provider to shut off machines. This decreases the supply of resources and causes prices to rise.
A user expects one of the above to occur in the future. For example, a user expects that a web server will experience high load in the future or that income will increase, or that supply will decrease. Users will reevaluate their existing bids in expectation of these events.
The user uses the Tycoon client to send bids to each of the hosts that contain the user's host accounts. Bids on separate machines are independent. These bids may be accepted or rejected. If they are rejected, then the user must increase the spending rate or decrease the resource requirements and try again.
Even if the bid is accepted, changes in the requirements of the application and changes in the prices of resources may cause this process to repeat. If necessary, the user may create host accounts on new hosts and move data and processing to maximize application performance and minimize spending.
In some cases, changes in resource prices may cause virtual machines to be shutdown. In cases of extreme disk pricing pressure, an auctioneer will delete the host accounts with the smallest disk bids. Consequently, users should back up data and bid enough for critical resources like disk to prevent data loss.