Cloudstate (Part 1): What is it?

Reading Time: 2 minutes

Serverless Computing, I hope you have heard or read this term in many tech talks and articles. And that’s because it is trending these days. But what is it? That is the first question that pops up in our mind as soon as we hear or read the term Serverless Computing. In this blog post, we will not only learn about serverless computing, but also about a framework called Cloudstate which helps us in building serverless applications.

What is Serverless Computing?

Well there are many definitions of Serverless Computing, but we will learn about the most fundamental one:

Serverless computing is a cloud computing execution model in which the cloud provider runs the server, and dynamically manages the allocation of machine resources.

From the definition, we can infer that the cost of servers is based on the actual amount of resources consumed by the application, rather than on pre-purchased units of capacity. Now such a computing model is quite cost-effective.

Of course there are many more advantages of the serverless computing about which we will learn in our next question, i.e., Why we need Serverless Computing?

Why we need Serverless Computing?

Whenever we want to switch to a newer technology or model, then it is because of the benefits that it brings with it. Similarly, serverless computing has many benefits due to which it becomes desirable:

The advantages speak for themselves and present enough reason to shift to serverless computing.

But when we think of shifting to a new model, we search for tools/tech that can help us in adopting/learning it fast. One such tool, or I should say framework is Cloudstate. Now what is it? Let’s take a sneak peek in to it.

What is Cloudstate?

Cloudstate is a specification, protocol, and reference implementation for providing distributed state management patterns suitable for Serverless computing.

From the definition it is clear that, Cloudstate is a framework that helps in building Distributed Stateful Serverless Applications. It supports a variety of serverless patterns, like:

  • Event Sourcing
  • Conflict-Free Replicated Data Types (CRDTs)
  • Key-Value storage
  • P2P messaging, and
  • CQRS read side projections

Moreover, Cloudstate is polyglot, which means that services can be written in any language that supports gRPC, like (Dart, Go, Java, Javascript, Kotlin, Python, Sprint Boot, .Net). Hence it doesn’t matter what language you master in, Cloudstate will help you build Stateful Serverless Applications.

So that’s what Cloudstate is. In upcoming blogs we will explore more about Cloudstate, hence stay tuned 🙂

Written by 

Himanshu Gupta is a software architect having more than 9 years of experience. He is always keen to learn new technologies. He not only likes programming languages but Data Analytics too. He has sound knowledge of "Machine Learning" and "Pattern Recognition". He believes that best result comes when everyone works as a team. He likes listening to Coding ,music, watch movies, and read science fiction books in his free time.