It's this simple: If the DDoS attack causes you to shut down, whether by the damage it does directly or by your response to it, then the attacker succeeds. If an attack succeeds, it will be performed every time the attacker wants to succeed.
The way to reduce DDoS attacks is to make sure they fail. If a DDoS attack doesn't take the site down, there's no point in attacking.
So to prevent DDoS attacks, you need to be able to survive them.
In other words, instead of spending thousands of dollars to try to keep the server up why not just shut it down (concede from the attackers) and spend nothing.
Because then you will have to cave in to the attackers every time they want something.
Here's a real-world scenario from the time of unrest in Bosnia:
You operate a chat service that is open to all comers. You also host events for several major companies such as chats with celebrities.
Some racists from a particular country close to the unrest in Bosnia don't like certain channels that speak a language associated with a race they dislike. They demand you prohibit users from that country and close those chat channels that speak in that language. If you don't do what they ask, they will DDoS you during every event you host on your service and cause you to lose those major customers to competitors.
What do you do? And if you cave in to the threats, how do you explain that to your users?
You want to know what they actually did? They multiplied their server capacity by 10 and their Internet bandwidth by 20. They added a full-time DDoS person just to monitor and react to attacks. They spent a lot of money, but they were able to issue some choice words of resistance to the racists. It was money well spent.