the best tech articles

Blog

No-CloudOps
by Hossam Khalifa

2024-11-15

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.

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:

  1. 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:
  2. 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.
  3. 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.

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:

Cloud services can also lead to unexpected costs:

Addressing Common Concerns

People often say that cloud offers better security.

Security

Cloud misconfigurations can lead to data leaks:

Reliability

Cloud services can face major issues:

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.