Having worked at a job where tips were my main source of income, I can say that it is a bit of a crapshoot (as to how much you bring home). However, by busting my ass and knowing what the customers wanted/needed, I made damned good money.
Slow nights meant little to no tips, but busy ones meant I could make some serious money. I did the job and kept working there because I did a risk/benefit analysis and decided that it was worth the risk and my effort. Sure, I could have taken a job where I got paid hourly and that was it, but at that point in my life, I enjoyed knowing that on a decent night, I could take home more than most of my peers were making in a full week.
The terms of my employment were based on agreed terms between me and the restaurant/bar. They didn't see a benefit in paying people to stand around when business was slow, and I saw the potential benefit of making a lot of money when it was busy. Of course, if the business was in a locale where tipping was not common, then my risk/benefit and decision to work in the food-service industry would have been based on those factors.