akka-streams

Introduction to Akka Streams

Reading Time: 4 minutes Hey folks, let us understand the basics of akka streams. I hope you have a basic understanding of Akka Actor. What is Akka Streams Akka Streams is a library to process and transfer a sequence of elements. It is built on top of Akka Actors to make the ingestion and processing of streams easy. As it is build on top of Akka Actors, it provide 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

Building Stateful Systems with Akka Cluster Sharding

Building Stateful Systems with Akka Cluster Sharding

Reading Time: 5 minutes This post was written in collaboration with Lightbend, a Knoldus’ Partner. Most microservices applications are stateless, which means they delegate persistence and consistency to a database or external storage. But sometimes there’s a benefit to keeping state inside the application.  If you’ve worked with data storage systems long enough, you are bound to bump into the term “sharding“. Sharding is another word for partitioning and Continue Reading

Introduction to Scanamo Version – 1.0.0-M11

Reading Time: 2 minutes Scanamo Scanamo is a library to make use of DynamoDB with Scala. In this blog, we are going to work on latest version 1.0.0-M11 So, let’s get it started- 1. Add Library Dependencies: – Setup sbt project and add these library dependencies 2. Setup application.conf: – Create application.conf file and place it inside the src\main\resources\ 3. Create Case Class And DAO: – Create case class Continue Reading

Introduction to Alpakka DynamoDB

Reading Time: 3 minutes Alpakka DynamoDB This AWS DynamoDB connector provides a flow for streaming DynamoDB requests, using Akka stream and AWS java DynamoDB SDK. And in this blog, we are going to work on version 1.1.2 So, let’s get it started- 1. Add Library Dependencies: – Setup sbt project and add these library dependencies in build.sbt 2. Setup application.conf: – Create application.conf file and place it inside the 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

Alpakka: Process big CSV files using Akka Streams

Reading Time: 3 minutes In this big data world, we have lots of data, and generally, that data comes in CSV files. So as the data is huge, so the CSV files will also be huge. It will not be feasible to load that CSV file into memory in one go. So here the challenge comes, that how should we read those big CSVs. I got the same use Continue Reading

Lagom: Lets Stream Kafka Messages And Process using Akka Actor

Reading Time: 5 minutes Lagom is an opensource framework for building reactive applications using Java or Scala and it is built on Akka and Play, which are well-known technologies performing in production in some of the most performance-centric and scalable application systems. The Lagom has been continuously proving itself as a user-friendly and convenient framework to design and develop scalable microservices. However, the microservices can either based on orchestration, Continue Reading

Akka-gRPC

Reading Time: 3 minutes Akka gRPC provides support for building streaming gRPC servers and clients on top of Akka Streams and Akka Http. Features of Akka-gRPC A generator, that starts from a protobuf service definitions, for: Model classes The service API as a Scala trait using Akka Stream Sources On the server side code to create an Akka HTTP route based on your implementation of the service On the client side, a client for the Continue Reading

Akka-Streams: All About Graphs!

Reading Time: 4 minutes In my previous blogs, I discussed about the basics of akka-streams and materialization. Now let’s dig deeper into Graphs in Akka-Streams. Graphs Till now we know how to create a linear pipeline/linear graph. But in real life scenario we generally don’t have linear graphs to implement. The graphs can be complex. In Akka Streams computation graphs are written in a more graph-resembling DSL. It aims 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