How PaaS can head off disaster

opinion
Mar 7, 20163 mins

PaaS's business continuity and disaster recovery features make it a valuable option for maintaining uptime

cloud integration biggest challenge
Credit: Thinkstock

I believe Platform-as-a-Service is the future of app development on the Web. Traditional development platforms just can’t keep up. PaaS has too much efficiency, too many features, and too little cost for it not to become the primary deployment method.

One of PaaS’s strongest selling points is BC/DR (Business Continuity and Disaster Recovery). You cannot escape the importance of a solid BC/DR plan. Even smaller organizations with modest deployments need to ensure their applications are up and available as close to 100 percent of the time as possible. That’s one of the main reasons to move to a Web-based application: So that users can access mission-critical software from anywhere in the world under a variety of conditions.

PaaS helps enable sound BC/DR plans in a few different ways. First and foremost, simply deploying your software on the infrastructure and platforms provided by these organizations is likely a major step up from an on-premise or self-managed deployment. Companies like Google and Amazon have enormous budgets with respect to the maintenance of their platforms, giving them the ability to offer SLAs of over 99.5% uptime. Most organizations simply cannot match the resources that these companies can muster up.

This is most obvious in the tenants you share the infrastructure with, namely, the host company themselves. With Google you’re leveraging the same infrastructure they use to deploy their own products. If you develop on Microsoft’s PaaS, you’re taking advantage of the underlying structure for software like Bing and XBox Live. If it’s good enough for those services, you can be assured that it’s good enough for yours.

But sound infrastructure and service is not all you need. Sometimes disaster strikes. Earthquakes, hurricanes, and other natural events cause power outages and can take entire data centers offline. All of the money and resources in the world can’t save infrastructure from unplanned outages like this.

That’s okay though, because PaaS solutions offer easy global distribution for your software. You can deploy an app to multiple locations around the world and easily setup load balancing, such as Microsoft’s Traffic Manager, to distribute or failover traffic between those sites. An outage at one center doesn’t have to mean downtime for your service. If you take advantage of a highly available, persistent storage backend for your app like DynamoDB or Google Cloud SQL, you can ensure no downtime and no loss of data either.

Dynamic scalability is a feature that PaaS makes especially easy. Sometimes availability is restricted due not to outages or disasters, but simply due to traffic volumes and responsiveness. Nothing is worse for a public-facing application than slow speeds or unresponsive links. Popularity can kill an app. By taking advantage of the scaling options in most PaaS offerings you can increase the number instances of your application and ensure that a rush of traffic doesn’t bring your service down. Dynamic scaling can respond instantaneously without your intervention according to rules you’ve created.

Migrating existing development or planning new development on a Platform-as-a-Service solution can seem like a daunting task initially. There are many speed bumps to address, but PaaS does its best to address those up-front. With the built-in BC/DR features of a PaaS you can rest assured that the business continuity plans for your app or service will be a piece of cake.

Ben Finkel has worked in software development for 18 years within a variety of industries, including banking/finance, insurance, and healthcare. Before joining CBT Nuggets, he was a software engineer at M&T Bank in Buffalo, New York. He is a Google Certified Trainer. When he’s not creating CBT Nuggets training videos, Ben enjoys skiing, snowboarding, reading, and homebrewing beer and cider. He also considers himself a hobbyist programmer and likes learning new development technologies.

Areas of Expertise: Google Certified Trainer, Microsoft ASP.NET (WebForms and MVC), Data Analysis and Design, Relational Database Architecture, MS SQL Server, Microsoft C#.NET, Javascript, jQuery, Microsoft Visual Basic .NET & 6.0, .NET Reporting Services, MS Access, Python

The opinions expressed in this blog are those of Ben Finkel and do not necessarily represent those of IDG Communications, Inc., its parent, subsidiary or affiliated companies.

More from this author

Garth Schulte began training on Office products about 20 years ago. His love of training led him to branch out to technical VB6 and SQL Server training. One of CBT Nuggets's longest-tenured trainers, he recently worked as a product manager, lead .NET windows programmer and SQL Server architect for one of the top back-end real estate software companies in the country. He is a Google Authorized Trainer.

He has the following certifications: Google Authorized Trainer, MCSD, MCSD.NET, MCDBA, MCSA. His areas of expertise are in Visual Studio 6, Visual Studio.NET Windows/Web Programming, SQL Server 6.5-2012, Google Cloud Platform.

The opinions expressed in this blog are those of Garth Schulte and do not necessarily represent those of IDG Communications, Inc., its parent, subsidiary or affiliated companies.