Akka

How to do Configuration in Akka

Reading Time: 3 minutes This blog is for the Scala programmer with a little bit of Akka background, but who is utterly baffled by the seemingly magical Akka Essentials. This blog is all about the configuration in Akka like how we can create a configuration in different ways. Configuration Configuration is all about the piece of text which is in the form of key value pair. You can start Continue Reading

Backpressure in Akka Stream

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 Backpressure Very simply put, the idea behind backpressure is the ability to say “hey slow down!”. Let’s start with an example that Continue Reading

Akka Actors: How do they actually work

Reading Time: 2 minutes You might have used akka actors for building concurrent and distributed systems. But do you know how actors actually works under the hood? So let us understand in this blog how akka actors actually work. First of all, let us understand what are akka actors. Introduction Akka is an open-source library that helps to easily develop concurrent and distributed applications using Java or Scala by leveraging the Continue Reading

Build your first API with Scala and Akka HTTP

Reading Time: 3 minutes Akka is a free and open-source toolkit and runtime simplifying the construction of concurrent and distributed applications on the JVM. It is built by Lightbend. Akka supports multiple programming models for concurrency, but it prefers actor-based concurrency. One can integrate this library into any JVM support language. It implements Actor Based Model. The Actor Model provides a higher level of abstraction for writing concurrent and Continue Reading

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