Stone Door Group

View Original

3 Compelling Reasons To Consider Serverless Computing For Your Next Application

When enterprises adopt a successful DevOps methodology consisting of integrated CI/CD and microservices, they quickly learn that the ability to deploy and scale applications can be a real challenge. Specifically, traditional infrastructure as a service (IaaS) models that require coordination and approval to bring more capacity on line take too much time. In addition, there is all the system administration overhead of managing either virtual or physical instances like applying patches, security scanning, and coordinating different admin teams. 

Platform as a Service (PaaS), like Red Hat OpenShift, provides a bridge to faster feature deployment. The lightweight nature of containers enables developers to deploy their applications in a much more frictionless environment that does not require the amount of investment and coordination to bring capacity online. Still, even for a PaaS either hosted on prem with hardware and a hypervisor like VMWare or on AWS/Azure/Google, there is still a compute node that needs to be managed. While faster and scalable, there is still some drag on the pace of DevOps and resulting corporate digital transformation.

Function as a Service (FaaS) is often referred to as “serverless computing”. Simply put, FaaS abstracts all hardware and OS functionality from the developer and offers functions on demand like NoSQL databases, APIs, and application runtime environments. These services are readily available in all public cloud platforms like IBM Cloud, AWS, Azure, and GCP.

FaaS virtually eliminates all the friction for developers to release application features as the cloud service itself manages everything below the application. Because of this, FaaS appears to be the platform of choice for modern startups and enterprises building purely greenfield applications. 

In 2018, analysts considered serverless computing or FaaS the fastest-growing cloud services segment. Research and Markets predicted the sector would be worth $7.7 billion by 2021. These statistics followed years of strong growth for the serverless computing sector, and this trend seems certain to continue well into the future. 

Also in 2018, Gartner identified serverless as one of the top ten trends that were likely to impact infrastructure during 2019. At the time, Ross Winser, Senior Research Director at Gartner, expected that by 2020, 20% of worldwide businesses would have turned to serverless, up from 5% at the time of the report. 

However, what are the main reasons your business should consider a move to serverless computing? This article will explain three of the main advantages of using serverless in your business.

Reduced Costs

Cost reduction can often be a part of company strategy to remain competitive and going serverless can help achieve this. With a server-based system, every month the business must pay for its allocated systems, regardless of its use. This is not the case with serverless computing. With serverless computing, a business will only pay for the resources it uses. However, there are other ways going serverless can save your business money.

Serverless users could save costs because of:

  • Reduced storage costs

  • Lower need for manual monitoring and human resources

  • Outsourcing of database

  • Reduced in-house costs

With serverless, there is room for other savings too, such as reduced maintenance and hosting.

While the possible savings will vary from business to business, there are many examples online of organizations making significant savings because of their move to serverless.

However, it is important to note that serverless may not always save your company money, and there are factors that can mean it may not be suitable for every business. For instance, when going serverless, there is vendor lock in to consider, and there is a steep learning curve that comes with it.

Language Selection

In a diverse office, not every developer will work with the same coding language. For instance, there may be developers on the team who are adept with Python and Java, and don’t feel the need to adopt another coding language. Serverless cloud provides a solution to this by offering multiple coding languages. This reduces resources and training time.

AWS Lambada’s extensive list of coding options is a good example of this. AWS Lambada offers Java, Python, Go, PowerShell, Node.js, C# and Ruby. These options give programmers added flexibility to suit their preferences. For example, some programmers consider Python and Node to be faster in serverless computing, while others feel that Java is easier to work with.

Each of these languages can have its pros and cons. There is a comparison chart here that may provide a useful guide for anyone new to AWS Lambada.

Scalability and Stability

Server-based platforms struggle to cope with traffic spikes, meaning your business may have to close just as it is experiencing growth. However, a serverless approach solves this issue. 

By going serverless, your business can minimize its downtime, providing customers with greater reliability and availability. When your traffic surges, a serverless system will automatically scale to accommodate it. Once the traffic lessens, you can scale back. 

This flexibility gives your business the ability to respond to changes in demand. For example, at peak vacation times like the run up to the Christmas season, Black Friday and Cyber Monday shopping, and the other peaks in demand your business may face. 

Conclusion 

Serverless computing offers businesses flexible scaling, improved stability, and reduced costs. It also gives developers the flexibility to work with the coding language they are most comfortable with.

Over the last few years, there has been an increasing use of serverless computing as more businesses come to realize its benefits, and this adoption is likely to continue to grow. 


About the Author

David Ford is a Software Architect, Red Hat OpenShift Guru, Docker Certified Associate, DevOps Skills Association Coach, and architect of Stone Door Group’s Microservices Accelerator, a solutions offering that helps companies start their application refactoring journey.  David serves as a mentor, coach and architect to mature enterprises who need to transition to a DevOps culture. He is part of an army of Stone Door Group consultants who have spent countless hours helping customers execute on their digital transformation initiatives. 

To find out more about serverless computing and how it may benefit your business, drop us a line at letsdothis@stonedoorgroup.com or go to stonedoorgroup.com to find out more.