DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Keep Your Application Secrets Secret
  • No Code Expectations vs Reality
  • How to Use Shipa to Make Kubernetes Adoption Easier for Developers
  • 6 Easy Ways to Start Coding Accessibly

Trending

  • Why DDoS Protection Is an Architectural Decision for Developers
  • How to Format Articles for DZone
  • Master-Class: Understanding Database Replication (Single, Multi, and Leaderless)
  • LLM-Powered Deep Parsing for Industrial Inventory Search
  1. DZone
  2. Software Design and Architecture
  3. Cloud Architecture
  4. PaaS or Container Services: Which One Is Right for You?

PaaS or Container Services: Which One Is Right for You?

While PaaS reigned supreme for a while, containers are have slowly moved in. See how the likes of Docker have impacted app development and deployment.

By 
Manisha Verma user avatar
Manisha Verma
·
Dec. 08, 17 · Opinion
Likes (8)
Comment
Save
Tweet
Share
17.0K Views

Join the DZone community and get the full member experience.

Join For Free

For many years, Platform as a Service (PaaS) has been the model of choice for developers in the world of cloud computing. But container services are starting to gain more currency in the world of coding. While the two have coexisted for some time, experts are starting to see a shift toward container services as the primary means of managing an application’s requirements. In fact, Gartner estimates that 70% of PaaS users will end up choosing a container service to create apps, during the development process. Read on to learn more about why this change is taking place, and what it means for your company and its apps.

Why PaaS?

Before PaaS, development teams needed to build infrastructure (and maintain it) for every app they developed. For complicated apps, this was tedious work: You had to write scripts or manually configure servers, storage, security, and infrastructure.

PaaS provided a platform that apps would run within. Rather than the individual application teams providing all of this standard plumbing, it was built into the platform, which the app then interfaced with. This was an elegant solution and offered developers unprecedented agility.

PaaS and Containers

Containers made PaaS possible. Containers are operating system constructs that limit and manage resources for an application. With containers, you could now “pack” all the code needed into the container, which the PaaS then builds on to run and manage the application.

It’s important to remember that in first-generation PaaS solutions, these containers were typically proprietary, not open-source. And while PaaS made coding apps swifter and more elegant, it did this by standardizing certain programming decisions, including the language or tools used, and the abstraction of infrastructure. Developers would follow a set of rules to allow the PaaS to take their software artifacts and run it in the PaaS solution’s containers.

So while PaaS drove productivity, it also limited developers’ choices. But because PaaS was such an efficient solution, and one most enterprises liked (because it allowed them a certain amount of control), it remained the gold standard in app development for a long time.

Container Software

Breaking free of PaaS became more viable with the advent of container software like Docker. These containerization programs allowed any developer to easily describe their app components and build a container image. A container image built in this manner has everything it needs to run smoothly on any system, without any middleware or virtualization layer. Hence, it’s also typically very efficient–far more so than a virtual machine.

With Docker and comparable programs, apps are independent from platforms. And they come with everything they need, so they should run identically across different systems. Plus, many of these containers are open source–unlike the containers used in most first-generation PaaS solutions.

The Future of PaaS

With container software, developers have created a new solution to the problem that caused them to create PaaS in the first place. Container software promises to free developers from many of the strictures that were placed on them with PaaS. For instance, when using a container management program to deploy your app, you can code in any language and use any component you like, whereas PaaS solutions typically limited you to a few languages and components.

However, containers still need to be managed. This is where container management software comes in. By providing services for deploying, monitoring, and managing containers, container management software can do everything that a PaaS can do without the constraints of a fixed platform.

It’s likely that some enterprises will try to hold on to PaaS, at least for a while. PaaS is familiar, by this point. And because the platform in a PaaS solution aids in governance (and containers can vary based on their contents), it’s likely that some organizations will stay with PaaS for a set of applications.

But container services make delivering portable apps a simple and versatile process. Many teams, especially in the DevOps world, are latching onto container services as their new preferred means of coding, deploying, and managing apps. Over time, you’ll likely see many more companies abandoning PaaS in favor of elegant, lightweight, versatile container-based solutions.

Docker (software) app operating system application Software dev Open source IT Coding (social sciences)

Published at DZone with permission of Manisha Verma. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • Keep Your Application Secrets Secret
  • No Code Expectations vs Reality
  • How to Use Shipa to Make Kubernetes Adoption Easier for Developers
  • 6 Easy Ways to Start Coding Accessibly

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook