days
-1
-5
hours
-1
0
minutes
-1
-8
seconds
-2
-4
search
Top tips for serverless beginners

What developers need to know about serverless technology

Jignesh Solanki
serverless
© Shutterstock / Gorodenkoff

What does serverless technology bring to the table? In this article, Jignesh Solanki goes over some of the top tips developers need to know about this emerging tech solution.

If you’ve kept yourself updated about the emerging technologies, you have come across the buzzword serverless computing. While serverless does look fairly mysterious, it’s definitely one of the most valuable tools available to developers today.

Back in 2014, AWS unveiled their serverless computing services- AWS Lambda. By 2016, all the cloud service providers jumped in this pool and the race has been on since then. Now, this promising technology is only going to develop more and more.

Gartner has referred to serverless technology in their annual Top 10 Strategic Technology Trends for 2017. The firm claims this trend to be a part of MASA, “the mesh app and service architecture (MASA) is a multichannel solution architecture that leverages cloud and serverless computing, containers and microservices as well as APIs and events to deliver modular, flexible and dynamic solutions.” However, this is a long-term approach which will necessitate IT to adopt new tools and implementations for doing things.

This is why we are going to discuss the top things that all developers should know about serverless technology and what exactly it brings to the table. Let’s get started.

SEE MORE: The road to serverless maturity: Running away from “NoOps” or toward it?

1. Serverless still includes servers

Mike Roberts define serverless technology as “ an approach that replaces long-running virtual machines with ephemeral compute power that comes into existence on request and disappears immediately after use.”

Serverless architecture is an umbrella which includes backend-as-a-service (BaaS) and function-as-a-service (FaaS). Functions are small code packages which runs inside containers. They are invoked due to specific event and die once the specific task is finished.

This doesn’t mean the absence of servers. Servers are still involved in the process, although, it might make the name confusing. What makes serverless different from cloud computing and server-less is that servers are not always running and spinning. Also, you don’t have to manage your servers or worry about their scaling. All you have to do is write your code and hit deploy. Another benefit of this is that it costs less to operate since your servers are not running 24/7.

SEE MORE: Serverless is ready for production

2. Microservices aren’t going to die

Now that we are moving towards functions, you might wonder about microservices. While it seems like microservices have just appeared on the scene, the idea has been around for some time.. Basically, the idea of microservices is to break down your code into small services which makes it easy to develop, deploy and scale as per the individual requirements. And FaaS is taking this beyond this!

However, there will be place for both microservices and FaaS. The main reason is that you won’t be able to do everything with functions due to its granularity. For instance, if your API/microservice is going to deal with database, it will be able to respond faster since things are open and ready which won’t be the case with functions.

The important thing to note here is that a group of functions is nothing but a microservice. And hence, functions and microservice can co-exist in a way which is complementary to each other. After all, to an end user it doesn’t make any difference if behind the scenes whether your API is executed as a microservice or a bunch of single app. Hence, microservices are here to stay!

SEE MORE: Containers, microservices and the power of modern IT

3. Focus on development cycle

Cloud computing may have freed us from a big investment in infrastructure.  Still, we all know that there is someone who is always busy managing cloud virtual machines. However, with serverless, that is not the case!

The rise of serverless has decoupled application delivery from infrastructure management and ownership. What it means is that it has enabled developers to focus solely on application development without ever worrying about managing servers. Serverless providers are solely responsible for your infrastructure management.

In this way, serverless lightens the load on application developers. In turn, this makes possible for IT companies to give more time for innovation. Also, since you can deploy and scale functions individually, the time to market is also reduced. Got an idea? Write the code and execute it in seconds!

SEE MORE: How AI will impact software development

4. Pay for what you actually use

People are really not appreciating how cost-effective serverless approach is going to be. As I said earlier, with serverless architecture, you don’t have to pay anything for the resources when they are idle. And most of the organisations have no idea how to cut down on these cost as it is unpredictable when your computing resources will be in use or not.

According to a research conducted by a leading cloud economics management company, most of the virtual machine instances run at sub-20% load. However, things are considerably different with serverless. Since you pay for what you use actually, you avoid the big headache of VMs.

Moreover, every serverless provider has provision of free tier services. At a recent Serverlessconf, there were two presentation on AWS Lambda based applications where they didn’t even surpass the free tier limit, i.e. they didn’t pay anything to AWS. One should note that these applications were not prototype, they were real-world applications.

SEE MORE: “When serverless is fully baked, it will have a huge impact on DevOps”

Learn more about serverless

If you’re new to serverless, here are some useful resources that can help you can get started:

Books on serverless:

Serverless Newsletters:

asap

Author

Jignesh Solanki

A thought leader, Jignesh leads Simform’s Product Engineering team by DevOps Institutionalization, end-to-end product development and consulting led transformation programs. He’d love to talk on cloud computing, mobility, security, swift and anything in between them. Follow him on Twitter @Jignesh_Simform.


Leave a Reply

Be the First to Comment!

avatar
400
  Subscribe  
Notify of