Akka

Beginners Level: Akka Typed API

Reading Time: 3 minutes In this blog, I will be explaining Akka Typed API. This is going to be my first blog on Akka Typed, so let us name it “Beginner Level: Akka Typed API“. Here, I will be telling you the reason for preferring Akka typed over untyped. Along with that, I will also be demonstrating some implementations with Akka Typed. Now before heading towards Akka Typed API, Continue Reading

Akka Fault Tolerance And Supervisor Strategies| “Fault Tolerance Made Easy”

Reading Time: 2 minutes This blog introduces Akka examples and explore the ways in which it facilitates and simplifies the implementation of concurrent, distributed applications. What is the Akka? Akka is a toolkit and runtime for building highly concurrent, distributed, and fault-tolerant applications on the JVM. It is written in Scala, with language bindings provided for both Scala and Java. All the complexity of creating and scheduling threads, receiving and Continue Reading

Rebalancing in Akka Cluster Sharding

Reading Time: 4 minutes In this blog we will be discussing about one of the important feature of Akka Cluster Sharding which is Rebalancing. Before moving forward make sure you have some basic knowledge on Akka Cluster Sharding, if not then please read Introduction to Akka Cluster Sharding and Implementing Akka Cluster Sharding. Before directly diving into this amazing feature which akka sharding provides, lets first understand the need Continue Reading

Implementing Akka Cluster Sharding

Reading Time: 3 minutes Now that we have a basic understanding of Akka Cluster Sharding in my previous blog. Let’s have a look at how we are going to implement this and what are the things that we need to keep in our mind while doing that.  To shard a specific type of actor we use the cluster sharding akka extension, and we call it as start, we can Continue Reading

Introduction to Akka Cluster Sharding

Reading Time: 3 minutes When we think of sharding or partitioning it’s typically related to databases. Databases uses sharding to improve resilience and elasticity. The Akka Toolkit provides Cluster Sharding as a way to introduce sharding in your application. Instead of distributing database records across a cluster, we’re distributing actors across nodes in the cluster, and it enables running at most one instance of a given actor at any Continue Reading

Comparison between different streaming engines

Reading Time: 5 minutes Distributed stream processing engines have been on the rise in the last few years, first Hadoop became popular as a batch processing engine, then focus shifted towards stream processing engines. Stream processing engines can make the job of processing data that comes in via a stream easier than ever before and by using clustering can enable processing data in larger sets in a timely manner. Continue Reading

Alpakka : Creating Data Pipelines

Reading Time: 4 minutes In my previous blogs I discussed about akka-streams , materialization and graphs in akka-stream . It was so easy to create sources, sinks and flows and connect them using methods and create runnable graphs. Now consider a situation where I’m getting data from Kafka and want to push it in Cassandra or Elasticsearch ? How to create such source or flow or sink that can Continue Reading

Achieving Concurrency with Akka Actors

Reading Time: 3 minutes Java comes with a built-in multi-threading model based on shared data and locks. To use this model, you decide what data will be shared by multiple threads and mark as “synchronized” sections of the code that access the shared data. It also provides a locking mechanism to ensure that only one thread can access the shared data at a time. Lock operations remove possibilities for Continue Reading

Akka-Streams: All About Materialization!

Reading Time: 4 minutes In my previous blog, I discussed about the basics of akka-stream. Basically, it was an introduction to akka-stream to get you started. There I mentioned about materialization which is a really important concept in Akka-Streams. And in this blog I’m going to discuss about it and some related topics in detail. So, let’s begin ! Akka-Streams Basics Let’s revisit the basics first. So, the data Continue Reading

Getting Started with Akka-Streams

Reading Time: 4 minutes As the world is growing, so is the data. And analysis of this data has become important. But how will you do it? How will you work with the data whose size is unknown to you? A solution to this scenario is Akka-Streams and here I’m going to discuss it. In this blog you will get to know the basics of Akka-Streams just to get Continue Reading

Backpressure in Akka Streams

Reading Time: 4 minutes “Reactive Streams”, whenever we come across these words, there are two things that come to our mind. The first is asynchronous stream processing and the second is non-blocking backpressure. In this blog, we are going to learn about the latter part. Understanding back pressure According to the English dictionary, back pressure means “Resistance or force opposing the desired flow of fluid through pipes”. To define Continue Reading

Scale Out with Cluster Sharding

Reading Time: 3 minutes If your actors are distributed across several nodes in the cluster, Cluster Sharding allows you to interact with them without worrying about their physical location and using only their logical identifier. Even if an actor re-locates to a new node, Akka will take care of locating it for you. You just need to send a message to it as if it is located on your local node.