From my experience the protection most VPS give only stops the big traffic floodsand for that it works ok, but it does nothing for the http attacks that look like real users, and thats what usually takes a site down, also many cheap hosts just null route your ip when the attack is too big.
you still need Cloudflare in front for the http part, it helps but alone its not enough, depends what attack you get.