Parallel Processing

Rules while working with stream in Java 8

Reading Time: 3 minutes First, let’s have a basic understanding of stream. Then we will have a look at the side effects that can occur while working with streams. Streams represent a sequence of objects from a source, which supports aggregate operations. One thing to be notified while working with streams  is that, aggregate operation (intermediate operations) are lazy evaluated i.e. they do not start processing the content of Continue Reading

Akka Persistence using MongoDB – Part I

Reading Time: 3 minutes Akka is a powerful actor based tool kit for Concurrency, Parallelism and Clustering. But for every concurrent applications, Akka actors are not fit because Futures are another alternative for performing Concurrency. Most of the developers follow simple rules for using Future and Actors is “Futures for Concurrency, Actors for State“. In concurrent applications most of the time we are facing race conditions and deadlocks. Because Continue Reading

Scala Future Under The Hood

Reading Time: 3 minutes In the previous post, i was discussing about Scala ExecutionContext. As we know, for multithreading we need to maintain thread pools using ExecutionContext and by default ForkJoinPool is used because for accessing “multi core” processor. There are multiple thread pools are available in our java.util.concurrent.Executors utility class and as per our requirement we can create new one also. After all, Scala have concept of Future. Continue Reading

Java Executor Vs Scala ExecutionContext

Reading Time: 3 minutes Java supports low-level of concurrency and some of rich api’s which is just a wrapper of low-level constructs like wait, notify, synchronize etc, But with Java concurrent packages Scala have high level concurrency frameworks for “which goal to achieve, rather than how to achieve“. These types of programming paradigms are “Asynchronous programming using Futures“, “Reactive programming using event streams“, “Actor based programming” and more. Note: Continue Reading

Parallel Collections in Scala

Reading Time: < 1 minute As multi-core becomes a standard, writing code which can harness the power of the cores remains a formidable challenge. The following KnolX session, tried to decode how scala is trying to give us an advantage by providing us parallel collections. It also discusses, which scenarios lend themselves to parallel processing and discusses the pitfalls of others.

Power of Parallel Processing in Akka

Reading Time: 4 minutes If you have been following the Inphina blog and our work with Scala related technologies, you would have noticed a spurt in our blog feeds. The reason being that we have recently come out of a very successful massively scalable framework created with Akka. Inphina holds an active stake in the product and the details of the framework would follow once the embargo is over. Continue Reading