These are some of the valuable features:
- Free 15 year SSL certificates (I used to need to pay for these).
- Spam protection to help prevent spam and unnecessary bot traffic.
- Edge caching on a CDN. This is nice for WordPress sites. I can get away without caching static content on origin servers.
- Helps increase security as a reverse proxy.
Improvements to My Organization:
Once a domain's name servers have been pointed to CloudFlare, you never have to worry about DNS propagation. This would be the case, for example, if you wanted to point a domain to a different EC2/digital ocean instance.
Room for Improvement:
In that sense, it's marketing that could use some improvement. It is hard to call your own product a "necessity", but I truly believe that it, or something like it, is a necessity. Without it, you are risking higher costs, more spam, more failures, and less satisfied customers. They need to convince non-technical people why it's so awesome.
CloudFlare solves a lot of problems that many non-technical people don't even know exist. In addition to the obvious ones, like SSL security, spam protection, edge caching across a CDN, you have an easy way for clients to point their domains and DNS management over to CloudFlare.
Here are some scenarios:
- Let's say, down the road, you need to add an email service like Mailgun. You don't need to ask the client to add weird sounding DNS records. You can just add them in CloudFlare. This alone saves hours, if not days, of needless client communication.
- Let's say you need to point to a different server instance and you need to guarantee that the new instance's content is live at exactly 7:57 a.m. EST. Just point CloudFlare to the new instance and clear its cache at that time.
- Let’s say you need to create a stage environment. You can add the DNS record and point that to wherever you'd like.
- I have found that clients prefer to own their own domain names, and give developers full server access. With CloudFlare, you can do just that while maintaining access to the domain's DNS records to be better able to do your job.
Another reason it's awesome is that you don't need your server to handle every request. Most of the traffic is to static resources and will be served by CloudFlare. This provides incredible peace of mind for higher traffic sites.
If your site has almost no static content, and is configured to auto-scale server instances based on demand, CloudFlare is still a relief because you will know that you are not paying for bad traffic.
Without CloudFlare, if some bot decides to send spam requests every day to your site, you'd likely pay for that traffic in one way or another.
Use of Solution:
We have used this solution for about two years.
We did not encounter any issues with stability.
We did not encounter any issues with scalability.
The installation was complex until I learned what I had to learn. Once you learn about domains, DNS, name servers, propagation, and web server management, CloudFlare is simple. Before you learn, it's quite hard to understand and debug DNS and configuration issues.
For example, I was once trying to SSH into the domain instead of an instance's IP address. It took me forever to understand why it was not going to work.
Cost and Licensing Advice:
I recommend the free plan for most users.
Ask for guidance from someone who has done it before.
Disclosure: I am a real user, and this review is based on my own experience and opinions.