Looking for hakker!
January 17, 2017
Dear hakkers, As we start into the new year, we have some exciting news to share: we’re looking to expand the core team! If you’re passionate about concurrency, distributed systems and want to help creating bleeding edge technology as part of our team, let us know by applying to the...
category: workCommunity Survey 2016 Summary
January 17, 2017
Community Survey 2016 summary While it took us a while to go over the 637 replies replies from the 2016 community survey, now we’re ready to publish a small summary with our interpretation thereof. This is almost twice the amount of respondents than in the 2014 survey! Before we jump...
category: communityAeron in Artery
December 5, 2016
We are using Aeron as the underlying transport in the new remoting implementation for Actor messages. The Aeron transport is based on UDP but it provides pretty much the same guarantees as TCP when it comes to message order and delivery. It is focused at performance and is more efficient...
category: arteryStreams in Artery
December 2, 2016
The new remoting implementation for actor messages was released in Akka 2.4.11 two months ago. Artery is the code name for it. It’s a drop-in replacement to the old remoting in many cases, but the implementation is completely new and it comes with many important improvements such as: Focused on...
category: arterySpotlight: GraphStage emit and friends
October 21, 2016
In Mastering GraphStages Part I and Part II we have seen that push and pull are the primary methods to use when implementing a GraphStage. In this post you will learn that GraphStage also comes with other methods that can simplify the logic for some use cases. As an example,...
category: streamsCustom Flows: Parsing XML (part II)
September 23, 2016
In part I we have built an XML parser that reads from a streamed data source and emits streamed XML parsing events as its output. This is a bit low level though to be directly usable, so in this post we will build two helper stages that illustrate how these...
category: integrationsCustom Flows: Parsing XML (part I)
September 16, 2016
In previous posts we have shown how to build basic Sinks and Sources, and how to integrate with existing APIs and handle backpressure in various ways. In this post we move on to the more advanced territory of custom Flows. If you recall, every processing entity in Akka Streams has...
category: integrationsAkka Streams Kafka 0.11
September 10, 2016
Apache Kafka is the leading distributed messaging system, and Reactive Streams is an emerging standard for asynchronous stream processing. It seems natural to combine these two; that’s why SoftwareMill started the reactive-kafka project back in December 2014 and maintained it since. Recently we’ve combined efforts with the Akka team, and...
category: integrationsFlow control at the boundary of Akka Streams and a data provider
September 5, 2016
When working with Akka Streams, one can be assured that all of the data is going to be processed in bounded memory. The reason Akka Streams can guarantee this, is that it implements the Reactive Streams protocol which describes how flow control is to be managed using demand signaling. Having...
category: integrationsAkka Community Survey 2016
September 1, 2016
Dear hakkers, we did a lot this year already. We merged Akka Streams and HTTP into the 2.4 series of Akka, pushed 16 releases of Akka itself, and maintained the various Persistence plugins. We also reached out to create even more community collaboration with projects related to Kafka, and now...
category: communityWriting Akka Streams Connectors for existing APIs
August 29, 2016
Writing an integration from ground up can be daunting and will be an expensive solution to maintain over time. Luckily there is rarely a need to start from zero: the Java ecosystem is rich and if there is something to connect to there often is a library to interface with...
category: integrationsA gentle introduction to building Sinks and Sources using GraphStage APIs (Mastering GraphStages, Part II)
August 25, 2016
As introduced in the previous blog article Akka Streams is highly extensible allowing you to write your own custom stages that can be used in fully asynchronous and back pressured streams. Out of the box there is a multitude of prewritten stages that can be combined to cover many use...
category: integrationsAkka Streams Integration, codename Alpakka
August 23, 2016
We believe that Akka Streams can be the tool for building a modern alternative to Apache Camel. That will not happen by itself overnight and this is a call for arms for the community to join us on this mission. The biggest asset of Camel is its rich set of...
category: integrationsMastering GraphStages (part I, Introduction)
July 30, 2016
Akka Streams provide a rich set of built-in combinators and utilities that users of the library can combine in flexible ways to achieve new functionality (most notable are the workhorses mapAsync and statefulMapConcat). With the GraphDSL and its first class cycles support one can build reusable pieces out of smaller...
category: streamsThreading & Concurrency in Akka Streams Explained (part I)
July 6, 2016
Akka Streams and streaming has different meaning to different people, but my view is that it is mostly a concurrency construct, like Actors and Futures. The primary goal of streams is to provide a simple way to: build concurrent and memory bounded computations that can safely interact with various forms...
category: streamsAkka Community update July 2016
July 5, 2016
Dear hakkers, With great joy and pleasure we bring to you… the rebooted Akka team blog! This blog aims to provide you with high quality technical content straight from the core team. We’ll go into more detail about “why this blog?”, and how it relates to the other blogs or...
category: community