The Benefits of No-Cloud Ops and Infrastructure
At Janan Tech, we specialize in no-cloud DevOps and infrastructure solutions. In this blog post, we'll explore the advantages of using dedicated servers and infrastructure over cloud services, and provide some starting points for testing out No-Cloud. We've gathered resources to give you a comprehensive overview of the cloud vs. dedicated servers/infrastructure debate.
Who Should Stay in the Cloud?
While we advocate for no-cloud solutions, there are scenarios where cloud services make sense:
- Startups validating ideas: It's often better to use cloud-based tools in this case. At Janan Tech, we tested Supabase with a startup to validate an AI idea, which worked well and was more cost-effective than hiring engineers for an unvalidated concept or idea. For other startup-friendly tools and stacks, check out Theo's (YouTuber) recommendations:
- Businesses with highly variable traffic: If your traffic spikes unpredictably, cloud services can be beneficial. However, for predictable high-traffic events (like e-commerce during Black Friday), proper preparation with dedicated infrastructure can be more cost-effective.
- Legal compliance is easier to achieve with the cloud: This is why Stack Overflow moved their SaaS Stack Overflow Teams (not their core) to Microsoft Azure.
The Power of Modern Hardware
Speed and Capability
Hardware has become incredibly fast in recent years. To understand what a single big server is capable of now, check out this insightful article from an ex-Google engineer.
Choosing the Right Hardware for Your Use Case
When you have the flexibility to choose your own hardware, you can select components optimized for your specific features. For example, you can have dedicated hardware for search DBs and separate hardware for cold storage.
Different companies have practiced this concept and have amazing outcomes.
- Dropbox used Shingled Magnetic Recording disks for efficient storage
- Dropbox also implemented a cold storage layer
- Basecamp leverages NVMe storage for cost-effective performance. Read about their journey:
- Even some core Twitter features can be handled by one big server that has task-optimized hardware
- Also Stack Overflow uses specialized hardware for search databases
- Netflix prioritizing networking hardware and other specialized hardware to serve more video files
- One can even check some benchmarks for specific hardware for specific tasks that can offer general guidance and is not sufficient in any way (nginx example CPU comparison)
The Simplicity of Non-Cloud Architecture
Cloud usage often correlates with complex microservice architectures. However, simpler architectures can be more cost-effective and easier to maintain for many businesses. Let's Encrypt is a great example of efficient, simple architecture:
- They create about 5 million certificates per day
- Their database has a few replicas for reads on several machines
- Writes run on one server with 128 threads, 64 physical cores, and ample storage
- Article
- Current stats
- Podcast
Stack Overflow also uses a monolith and dedicated hardware instead of cloud services:
For more discussions on simple setups and how they decrease cost a lot, check out this Hacker News thread
The Benefit of In-House Expertise
Having in-house expertise in cloud-independent technologies is invaluable. Dan Luu explains how Twitter benefited from having Linux committers and JVM developers on staff, saving more money than their large salaries cost. I don't think we can explain it better than him. So check out his article
Cost Benefits
The cost advantages of no-cloud solutions are significant:
- Ahrefs saved $400M in 3 years by not using cloud services
- Their follow-up review of saving about 1 billion dollars {:target="_blank"}
Cloud services can also lead to unexpected costs:
- Empty S3 bucket causing bill explosion
- Primeagen's comments (ex-Netflix engineer):
- Netlify's $104k bill for a simple static site
Addressing Common Concerns
People often say that cloud offers better security.
Security
Cloud misconfigurations can lead to data leaks:
- S3 bucket example
- Primeagen's video commenting on the article
- other S3 security issues in general which also shows the need for expertise even when using the cloud. So using the cloud in many cases does not cut down on costs.
- Turso's data leak incident
- Theo's commentary on the article
Reliability
Cloud services can face major issues:
- Google Cloud deleting a $135 billion pension fund
- Google Cloud just automatically lowering quota and causing a production app to stop Cloud providers also experience outages:
- AWS: check here and here
- [Google Cloud](https://status.cloud.google.com/summary{:target="_blank"}
- Azure
Handling Peak Traffic
Using automation tools like Ansible or Infrastructure as Code tools, you can temporarily migrate your code to more suitable servers or even to the cloud during high-traffic periods. This way, there is no need to stay in the cloud for these rare moments.
The need for experts
One common argument for cloud is that you will save money because you don't need expert DevOps engineers that will take care of all the infrastructure and deployment etc. I will keep it short and just cite an answer: "But if I use Cloud Architecture, I Don’t Have to Hire Sysadmins Yes you do. They are just now called “Cloud Ops” and are under a different manager. Also, their ability to read the arcane documentation that comes from cloud companies and keep up with the corresponding torrents of updates and deprecations makes them 5x more expensive than system administrators." And we also mentioned this when we spoke about security which problems can come with the lack of experts. Plus, if you are already paying, it is better to have someone with broader expertise rather than someone specialized only in cloud or, even worse, in a specific cloud provider.
Our Experience at Janan Tech
With one of our partners, we serve about 12 million monthly users with approximately $150/month in dedicated server rentals. We also serve an enterprise medical service in Germany for about $200/month using rented dedicated servers.
First Steps Out of the Cloud
Consider using dedicated server providers like Hetzner or OVHcloud. For example, Basecamp and other companies have partnered with Deft. At Janan Tech, we work with Hetzner. In conclusion, while cloud services have their place, many businesses can benefit significantly from no-cloud solutions in terms of cost, control, and performance. We encourage you to explore these options and consider whether a no-cloud approach might be right for your organization.