Search Results for: future

Back2Basics: Futures in Scala

Reading Time: 3 minutes Hey folks, in this blog we will be discussing and try to gather some knowledge on how multithreading, concurrency can be achieved and asynchronous computations can be done on immutable values by the use of Futures. Why do we need Futures? The concept of Futures was introduced to allow concurrent programming and avoid wastage of resources which will be blocked in case of sequential code. Continue Reading

Is Apache Flink the future of Real-time Streaming?

Reading Time: 5 minutes In our last blog, we had a discussion about the latest version of Spark i.e 2.4 and the new features that it has come up with. While trying to come up with various approaches to improve our performance, we got the chance to explore one of the major contenders in the race, Apache Flink. Apache Flink is an open source platform which is a streaming Continue Reading

map(), flatMap() on Futures & Options in scala

Reading Time: 5 minutes In this blog, we would be looking at how map() and flatMap() operations work with Option and Future of scala, literally speaking both Futures and Options are very effective features of scala, A Future lets us have a value from some task on a differnt thread and Option provides us a hand from null of java as using null in scala is seen a very bad approach in Continue Reading

Prevent Breaking Code Changes in Future Releases using `non exhaustive` enums in Rust

Reading Time: 2 minutes Hello everyone, recently I have come across a feature in Rust, known as non_exhaustive. It was introduced in Rust 1.40.0 . This attribute prevents source code-breaking changes in projects downstream. enums can be non-exhaustive or exhaustive, depending upon their needs. A non-exhaustive enum indicates that this enum may get new value in the future. By adding #[non_exhaustive] attribute, we can create a non-exhaustive enum which Continue Reading

Future vs CompletableFuture in Java- #2

Reading Time: 3 minutes In our previous blog – Future vs CompletableFuture – #1, we compared Java 5’s Future with Java 8’s CompletableFuture on the basis of two categories i.e. manual completion and attaching a callable method. Now, we will be comparing them on the basis of next 3 categories i.e. Combining 2 CompletableFutures together Combining multiple CompletableFutures together Exception Handling Let’s have a look at each one of Continue Reading

Future vs CompletableFuture in Java – #1

Reading Time: 4 minutes This is Part 1 of Future vs CompletableFuture. In this blog we will be comparing Java 5’s Future with Java 8’s CompletableFuture on the basis of two categories i.e. manual completion and attaching a callable method. What is CompletableFuture? CompletableFuture is used for asynchronous programming in Java. Asynchronous programming is a means of writing non-blocking code by running a task on a separate thread than Continue Reading

Finagle : Controlling the Future Of RPC systems

Reading Time: 4 minutes In this blog we’ll use Finagle to build a very simple HTTP server that is also an HTTP client — an HTTP proxy. So Let’s Begin With Some Introduction to the Finagle. Finagle is an extensible Remote Procedure Call (RPC system) for the JVM, used to construct high-concurrency servers. Twitter Finagle is a great framework to write distributed applications in Scala or Java. It is Continue Reading

Akka Stream: Map And MapAsync

Reading Time: 2 minutes In this blog, we will discuss what are “map” and “mapAsync” when used in the Akka stream and how to use them. The difference is highlighted in their signatures:- Flow.map takes in a function that returns a type T, while Flow.mapAsync takes in a function that returns a type Future[T]. Let’s take one practical example to understand both:- Problem – Suppose we have a user with a userId and Continue Reading

Zero-Cost Asynchronous Programming in Rust

Reading Time: 4 minutes This article helps you out with the concept of Asynchronous Programming in Rust. Writing Asynchronous code can greatly improve performance but the downside is they are complex. In this post, I will explain you how to use futures(Rust Library) and its methods using simple examples and will assume that readers having an idea about Rust and for those who are unfamiliar with Rust, Rust is Continue Reading

A Quick Rundown of Async/Await in Rust

Reading Time: 4 minutes As you all know the async–await syntax hits stable Rust, as part of the 1.39.0 release. So let’s leverage this stabilized feature to make our code-bases Asynchronous with Zero-cost futures. In this article, we’ll mainly look into the basics of Async/Await feature: Async/Await: Quick Intro Zero-cost futures Quick Demonstration of Asynchronous Programming Before diving into our road-map let’s understand the behavior of the Asynchronous programming. In a Continue Reading

What is Ask Pattern in Akka?

Reading Time: 3 minutes After going through the previous blogs, we are now familiar with Akka, Actors, and their implementation (implementing-actors-in-akka). In this blog, we are going to discuss the Ask Pattern in Akka. So, let’s begin. Communication Among Actors In Akka, actors communicate with each other by sending and receiving messages. The messages can be sent in many patterns like- Fire and Forget –The tell() method works on Continue Reading

Don’t Worry… I hugged it first – Loggers In Rust

Reading Time: 2 minutes Loggers play the most significant role in the software development community that not all developers take it seriously. Due to this, all have lost countless hours while debugging the code. So it is helpful to use logger. So, lets explore how to use loggers in Rust. Importance of Logger? Logger provides tremendous help to the developer while understanding the code. But also some developer assumes 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

:)