Reactors.IO: Actors Done Right

Reactors.IO: Actors Done Right

Knoldus

In our previous blog, we tried to explore the upcoming version of i.e Java 9. So this time we try to focus on Scala . In This Blog , We will be Looking onto a New Reactive programming framework for Scala Applications i.e Reactors IO .

reactress-gradientReactors.io fuses the Best parts of Functional reactive Programming and the Actor Model.
Reactors
allows you to create concurrent and distributed applications more easily, by providing correct, robust and composable programming abstractions.Primarily targeting on JVM , the Reactors framework has bindings for both Scala and Java.

Setting Up Reactors.io

To get started with Reactors.IO, you should grab the latest snapshot version distributed on Maven. If you are using SBT, add the following to your project definition :

reactors

Then Simply Import the io.reactors package: import io.reactors._  and you are ready to go.

View original post 1,077 more words

Advertisements

Did Someone Say Java 9 ??

Did Someone Say Java 9 ??

Knoldus

In our previous blog , we discussed the features that were added in Java 8.
More than three years after the release of Java 8, the next version is now just around the corner with a tentative release date of September 21st, 2017.

java9-meta

You may have heard about Java 9’s module system, but there’s even more to this new version. In this blog, We will try to cover some of them.

One can download JDK 9 EA (Early Access) software from Java 9 Download

Jeremy-Renner

So without wasting any time  Let’s Begin with the New features in Store :  

Java 9 REPL(JShell)

View original post 1,249 more words

Like Java 7 ? Then You Are Going to Love Java 8 !!

New to Java 8? Here’s Where You can Start.

Knoldus

JAVA 8 (aka jdk 1.8) is a major release of JAVA programming language development. With the Java 8 release, Java provided support for functional programming, new JavaScript engine, new APIs for date time manipulation, new streaming API, etc. which will be discussed in detail.
In this blog, we will focus on What’s New in Java 8 and it’s usage in a simple and intuitive way.We assume that you are already familiar with Java 7.

If you want to run programs in Java 8, you will have to setup Java 8 environment by following steps :

  1. Download JDK8 and install it. Installation is simple like other java versions. JDK installation is required to write, compile and run the program in Java.
  2. Download latest Eclipse IDE/IntelliJ , these provide support for java 8 now. Make sure your projects build path is using Java 8 library.

1

New Features

There are dozens of features…

View original post 1,307 more words

Finagle : Controlling the Future Of RPC systems

Finagle : Controlling the Future Of RPC systems

Knoldus

logoIn 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 written in Scala, but provides both Scala and Java idiomatic APIs.
It implements uniform client and server APIs for several protocols, and is designed for high performance and concurrency.

Finagle uses a clean, simple, and safe concurrent programming model, based on Futures. This leads to safe and modular programs that are also simple to reason about.

Finagle provides a robust implementation of:

  • connection pools, with throttling to avoid TCP connection churn;
  • failure detectors, to identify slow or crashed hosts;
  • failover strategies…

View original post 782 more words

Finatra : Building Rest APIs Made Simple

Finatra : Building Rest APIs Made Simple

Knoldus

Finatra is an open-source project by Twitter that can be used to build REST APIs in Scala programming language. Finatra is a framework for easily building API services on top of  Twitter-server, Finagle, and Twitter-util.

  1. Finagle: It provides the building blocks for most of the code we write on the JVM. It has long-served as our extensible, protocol-agnostic, highly-scalable RPC framework
  2. Twitter Server:It provides elegant integration with twitter flags for parameterizing external server configuration, an HTTP admin interface, tracing functionality, lifecycle management, and stats.
  3. Twitter-Util: A bunch of idiomatic, small, general purpose tools for Scala.

1---tqJ-9f9eLNZU2kh0zmFg
Finatra allows you to easily define a server and (in the case of an HTTP service) controllers — a service-like abstraction which define and handle endpoints of the server. You can also compose filters either per controller, per route in a controller, or across controllers.

Building A Simple Hello Application

In This Blog , We Will…

View original post 827 more words

Cassandra Database : The Next Big Thing

Cassandra Database : The Next Big Thing

Knoldus

Apache Cassandra, a top level Apache project born at Facebook , is a distributed database for managing large amounts of structured data across many commodity servers, while providing highly available service and no single point of failure.

BASIC FLOW OF DATA INTO CASSANDRA TABLES

write-path.png

Installation

In a terminal window:

1. Check which version of Java is installed by running the following command:

$ java -version

It is recommended to use the latest version of Oracle Java 8 or OpenJDK 8 on all nodes.
2. Download Apache Cassandra 3.0:

$ curl -L http://downloads.datastax.com/community/dsc-cassandra-version_number-bin.tar.gz | tar xz

To view the available versions, see the DataStax Certified Cassandra download page.

3. If you download from this page, use the following command to untar:

$ tar -xvzf dsc-cassandra-version_number-bin.tar.gz

4. To configure Cassandra, go to the install/conf directory:

$ cd dsc-cassandra-version_number/conf

Additional Information :

View original post 560 more words