Serverless concept

Who should read it: It is for you if you are looking for an overview of this topic for a project, to conduct/appear in an interview, or in general. As we learn more, we will update this article.

I was curious to learn about serverless framework. Seems an interesting concept. Does it really work without a server? why to use it? Where to use it? In my notes below, sharing my learnings:

1. What is serverless:

Serverless does not mean there is no server involved. Serverless is an architectural approach to software solutions that relies on small independent functions running on transient servers in an elastic runtime environment. Let\’s break it to understand what it means:

  • Small independent functions: sometimes it\’s also called Functions as a Service.
  • Transient servers: Actual machines hosting it are temporary instances.
  • Elastic environment:  These virtual machines are spun up when needed and spun down when not needed. This elasticity helps in gaining better targeting of resources and better operational cost.

Finally these all (functions, virtual machines, and elastic runtimes) need an architectural approach.

2. Why serverless:

Using serverless reduces time to market an idea with a reduced cost. Below are some pros and cons of using Serverless architectures:

Pros:

  • Developers can focus more on coding for the business logic
  • We can more easily deal with scalability

Cons:

  • Spinning machines take time
  • Debugging is complicated
  • Vendor lock-in

Four characteristics of serverless platforms:

  • Event driven: Serverless has the ability to support event driven architectures.
  • Streaming data: Serverless architecture supports streaming data architectures.
  • Auto-scaling: Serverless architectures have ability to support the ability to scale the capacity of the the solution.
  • Fault-tolerance: For the solutions that needs a \’zero downtown\”, serverless can be a good option to consider.
3. How serverless platforms work:
Serverless architecture approach is to write small functions and link those with the API. So, solutions provide multiple programming options to code the functions. Amazon, Google, and Microsoft are three common and well established hosting platforms.
Serverless use case examples:
  • Small, simple, or complicated web applications
  • Backends
  • Data processing
  • Chatbots
  • IT automation
Reference:
Book: What is serverless, by Mike Andundsen, published by O\’Reilly Media, Inc.
Videos by Amazon Web Services (AWS)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s