We use analytics cookies.We use cookies to analyze site traffic and improve your experience.
Loading...
System Design Masterclass · Cloud Infrastructure
Free preview: the first 2 parts of this 6-part lesson.
Already bought the course? Sign in to read the whole lesson.
this lesson is part of
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design courseread the rest of this lesson in
System Design Masterclass
Unlock this lesson and the 751 other paid lessons
$25 once, by PayPal
See the System Design coursein Cloud Infrastructure
This lesson is part of the full System Design Masterclass. Unlock it along with 769 other lessons for a one-time payment.
One-time payment by card or PayPal
Get Lifetime AccessOne-time payment: UPI, card or netbanking
Get Lifetime Access18 Foundation lessons are free, no payment needed. Try them now
It is easy and good
“It is really nice and good Please join the course”
With IaaS, you get a virtual machine. Great. Now you need to install an OS, configure a web server, set up a runtime, install dependencies, configure SSL, set up log rotation, create deployment scripts, handle auto-scaling, and patch security vulnerabilities every month. You just wanted to deploy a web app.
PaaS removes all of that. You push your code, and the platform handles everything else. No server configuration. No OS patching. No capacity planning. The platform detects your language, installs dependencies, builds your code, deploys it, and scales it automatically.
Heroku pioneered this model with git push heroku main. Vercel does it for Next.js. Railway, Render, and Google App Engine do it for general applications. The developer experience is dramatically better, deploy in seconds, not hours.
The trade-off is reduced control. You can't install custom system libraries. You can't tune kernel parameters. You can't choose your exact OS version. For most web applications, this doesn't matter. For specialized workloads (machine learning, video processing, game servers), it might.
| Aspect | IaaS | PaaS |
|---|---|---|
| You manage | OS, runtime, scaling, deploy | Code and configuration only |
| Deploy process | SSH, scripts, pipeline | git push, CLI, or dashboard |
| Scaling | Configure auto-scaling groups | Automatic (usually) |
| Cost model | Per-hour compute | Per-request, per-dyno, or per-resource |
| Startup time | Minutes (boot VM, deploy) | Seconds (pre-built containers) |
| Customization | Full control | Limited to platform capabilities |
Popular PaaS options:
| Platform | Best For | Pricing Model |
|---|---|---|
| Vercel | Next.js, React, static sites | Free tier, per-function execution |
| Heroku | General web apps, prototypes | Per-dyno ($7+/month) |
| Railway | Full-stack apps, databases | Per-resource usage |
| Google App Engine | Python, Java, Go, Node.js | Per-instance-hour |
| AWS Elastic Beanstalk | AWS-native PaaS | Underlying IaaS costs only |
When PaaS isn't enough: If you need GPU access, custom kernel modules, specific file system configurations, or software that requires root access, you'll need to drop down to IaaS or containers.