Modern software increasingly operates on data in near real-time. There is business value in sub-second responses to changing information and stream processing is one way to help turn data into knowledge as fast as possible, Kevin Webber explains in an introduction to Reactive Streams.
Typesafe's Play team has released version 2.4 "Damiya" of their web framework. By embracing dependency injection, the refactoring towards better modularization that was started in 2.3 has continued in this release. Play 2.4 requires Java 8 and uses Lambdas and Default Methods in Play's Java-API.
For developers who have experienced the problems with creating and managing multithreaded applications and are looking for a higher level of abstraction, Arun Manivannan has written a series of, so far, six blog posts explaining the principles of Actor model using an picture-rich visualization and some simple Akka examples.
Vaughn Vernon describes a reactive process manager supervising the process of finding the best loan quotes from banks with a focus on the reactive part, using Actor model for the implementation with examples written in Scala using Akka and C# using his recently published Dotsero toolkit.
CQRS and Event Sourcing provide a clear and concise way to build distributed applications that adhere to the reactive manifesto, Duncan DeVore claimed in a recent presentation sharing his experiences building a distributed application using Akka and Scala.
Last week Vaughn Vernon published Dotsero, a .NET actor model toolkit that follows the Akka API and earlier this year a preview of the Orleans framework based on the Actor model was released by Microsoft Research. In a recent twitter discussion Vaughn and Sergey Bykov, lead of the Orleans project at Microsoft Research, discussed the different approaches taken in Orleans and Dotsero.
DDD and CQRS are great for building scalable software considering concepts like bounded contexts, transaction boundaries and event based communication and is together with Akka a complete platform for building enterprise applications, Pawel Kaczor starts a three-part series building an reactive application based on these concepts.
We have to maximize locality of reference and minimize contention to make systems scale, Jonas Bonér, creator of the Akka project, stated in a recent presentation about scalability in reactive systems. By using a share nothing architecture, build on an event-driven foundation and adhering to core principles that have been proven to work for ages we can write really scalable systems.
There are both commonalities and some differences when comparing architectural principles and coding styles in Akka Actors and Java EE 7 Enterprise JavaBeans, specifically stateless session beans and JMS message-driven beans, Dr Gerald Loeffler concludes in a recent introductory talk when explaining and comparing the three approaches from a high-level concurrency view.
Reactive programming (RP) is based on data flows and the propagation of change, with the underlying execution model of a programming language automatically propagating changes through the data flow. With the popularity of event-driven, scalable, and interactive architectures both on the server and the client, the concept of “reactiveness” is increasingly gaining attention.
Scala creator Martin Odersky joined forces with Jonas Bonér, the creater of Akka, and launched Typesafe. With $3 million Series A financing led by Greylock Partners, Typesafe offers commercial support for enterprise development of multicore and cloud architectures.
Project lead Jonas Bonér has announced today that Akka has reached its 1.0 milestone. InfoQ spoke to Bonér to find out more about the project.
Today, the Akka team released version 0.7 of their actors framework for the Java Virtual Machine. Akka attempts to address future concurrency challenges with a solution relying on message based actors, software transactional memory and appropriate fault handling strategies. InfoQ talked to Jonas Bonér about the intent behind Akka, its current state and adoption, and future plans.