Your son is acting out in a manner that is normal at this age. That's not to say that you should let him act this way but perhaps it will help you feel less anxious about it. He has strong feelings and he doesn't know how to express them.
One way to help him is (when he's not acting out) to describe your own feeling at the moment (frustration, anger, sadness, happiness) and talk about how you feel and what you are going to do about it. For example; you drop something in the kitchen for the umpteenth time and you say to him "I am so frustrated that everything seems to fall out of my hands. I'm going to stamp my feet a couple of times." Then, "whew! I feel better now."
Another important thing is to notice when he has these meltdowns and what may have caused them. Try to prevent him from becoming over tired or hungry or from too much stimilation. Be consistent with naps, meal and snack times, and if you take him shopping do it when he's rested and fed.
And try to use the word "no" as little as possible. No is a red flag even to adults. Instead try "you can play with this toy. I have to put this one up for now." Or if he wants to do something say, we can do that later and if you know when say when, now we must do this. Also give choices whenever possible. Say he wants to push all the buttons on the TV. Hand him a toy he likes and if that doesn't work pick up another one and tell him he has a choice between this one and this one, all the while walking him away from the TV.
And remember 3 yo have little to none long term memory. You are going to be repeating yourself over and over for awhile. It's the repetition in a calm manner that teaches them. When one gets angry the child focuses on the anger and misses the message you're trying to relay.
Time outs work well for some kids but not at all for others. I give my 6 yo and 3 yo grandchildren time outs by telling them to go to their room until they can behave better. I say when you stop crying or stop hitting or ???? you can come back out. Sometimes I say I don't want to hear you yelling or ??? I emphasize what behaviour I want changed and how I want them to behave. I never tell them they are bad in any form. They are misbehaving and it's the behavior I want to change.
With my granddaughter I sometimes anticipate misbehavior by noticing that she is tired and hungry. Then I change our activity. If we're out we go home or stop to get something to eat. At home we do something quiet. At my house she usually needs me to stay with her and we read or watch a video. At her house she usually goes to her room and plays or watches TV. Sometimes she wants to be rocked or even just held. I think that she's learned these ways of calming herself because that is the way I calm myself and have done those things with her.
When my granddaughter was 2 and 3 she would throw lying on the floor kick and scream temper tantrums freqently, sometimes everyday and not necessarily because she wanted something I wouldn't allow. I'd stay in the room with her, out of her reach, and when she calmed down she would crawl over and sit on my lap. I think, as one of the mother's said, that kids this age just do not know how to handle strong feelings. The feelings take over. And it's our job as adult caretakers to show them how to recognize those feelings and then how to manage them. It is not easy!
I found an easy to understand site for the Feingold Program and can see how it could be helpful. Here's the address: http://www.feingold.org/home.html