ANNOUNCE: Akka 2.0-RC2 (is she golden or what?!)

88 views
Skip to first unread message

√iktor Ҡlang

unread,
Feb 21, 2012, 12:51:13 PM2/21/12
to Akka User List, akka...@googlegroups.com, scala-user
Ladies and gentlemen,

We, the Akka committers, are proud to announce the availability of Akka 2.0 RELEASE CANDIDATE 2 — the next generation of Akka!

Building on the experiences from the Akka 1 series, we take Akka to the next level — resilience by default, scale up and out by configuration, extensibility by design and with a smaller footprint.

Highlights of Akka 2.0 RELEASE CANDIDATE 2:

* 33 tickets closed in 7 days (131 files changed, 2691 insertions(+), 1617 deletions(-))

* Docs
   - Akka now has 357 pages of documentation (vs. 350 in RC1) Available both as html and as pdf.
   - RemoteRouterConfig
   - Remote Lifecycle Events
   - A lot of minor edits and new sections that didn't make it into RC1

* Config
   - Updated to latest version of HOCON (fixes some issues with Serialization)

* ForkJoin
   - Updated to latest version from jsr166y

* Mailboxes
   - Separation between Mailbox and MessageQueue,
     making it possible to use essentially any MailboxType with BalancingDispatcher
   - Opening up PriortyBased mailboxes to users

* Remote
   - Changed the point of reporting some of the LifeCycleEvents to be able to provide more info
   - Add possibility to configure on which local interface outbound connections should be bound to

* TypedActor
   - Remote TypedActors can now use JavaSerialization properly

* Misc
   - Await now requires handling of checked Exceptions (sorry Java, but you started it)
   - ExecutionContext/ExecutionContexts now return composite types with both ExecutionContext and Executor(Service) for convenience
   - ActorSystem.isTerminated added
   - Removed superfluous logging from DurableMailboxes
   - Misc Bugfixes (see changelog for full list) 

Highlights of Akka 2.0 RELEASE CANDIDATE 1:

* 26 tickets closed in 8 days (190 files changed, 3765 insertions(+), 2041 deletions(-))

 * Docs
   – Akka now has 350 pages of documentation (vs. 337 in M4) Available both as html and as pdf.
   – Http documentation updated
   – Java documentation for 0MQ module
   – JMM docs regarding Akka Futures
   – Minor edits overall

 * Routing
   – Erronous resize resolved in Resizers

 * Dispatchers
   – BalancingDispatcher now has a config option for "attempt-teamwork"
   – BalancingDispatcher race condition resolved

 * Futures
   – Future.blocking() now has a Java API in Futures.blocking()
   – Future.blocking() now doesn't require an ExecutionContext

 * Config
   – Updated to latest HOCON version (configs are now Serializable)
   – Added setting for shutting down the JVM on fatal problems (jvm-exit-on-fatal-error)
   – Serializer config has changed to be more convenient for the best–effort search


Highlights of Akka 2.0 Milestone 4:


 * 57 tickets closed in 13 days. (447 files changed, 20231 insertions(+), 15202 deletions(-))

 * Docs 
  – Akka now has 337 pages of documentation (vs. 305 in M3) Available both as html and as pdf.

 * Actor
   – Default dispatcher based on new ForkJoinPool destined for Java8, extremely better scalability.
   – ActorPath.fromString — easier creating of ActorPaths
   – Remove FSM Ev()

 * Futures
   – Brand new Java API supporting all operations on Future
   – Future.recoverWith — the "flatMap" of "recover"
   – Future.fallbackTo — the harmonized name of what was previously or/orElse
   – Promise.complete — now throws an IllegalStateException if already completed, use tryComplete for conditional complete
   – Future.andThen — makes it possible to create ordered asynchronous side effects
   – All callbacks are now friendlier to the type inferencer

 * Remote
   – Read timeout tracking now supports read timeouts, write timeouts and both, and can be turned off completely
   – No need to configure nodename anymore

 * Serialization
   – Serialization now supports best–effort lookup of suitable Serializer, see docs for more info

 * Misc
   – Better Android compatibility
   – Lots of minor bugfixes
   – Lots of small performance improvements
   – Reworked class loading strategy to be more unified



Highlights of Akka 2.0 Milestone 3:



 * Almost 90(!) tickets closed in 3 weeks. (505 files changed, 13617 insertions(+), 8636 deletions(-))

 * Docs – Akka now has 305 pages of documentation (vs. 254 in M2) Available both as html and as pdf.

 * Patterns
   – "Ask/?" being moved out to a Pattern" — for Scala add 'import akka.pattern.ask' (which will provide suitable implicit conversions to support nearly the same methods, check with 'import akka.migration.ask' first for deprecations; and for Java use akka.pattern.Patterns.ask().
   – gracefulStop
   – pipeTo

 * Actor
   – Removed timeout from Props
   – Removed FaultHandler from Props
   – Renamed FaultHandler to SupervisorStrategy to be more clear
   – Improved SupervisorStrategy creation and parametrization

* ActorSystem
  – ActorSystemImpl renamed to ExtendedActorSystem for Extensions
  – Now has awaitTermination
  – Can now be configured to only create threads that are daemons

 * TypedActor
   – TypedActorProps that is used with typedActorOf, instead of overloading
   – Possibility to proxy any ActorRef (think Remote etc)
 
 * Futures
   – "orElse" is replaced with "or"
   – "zip" has been added
   – Reduced memory footprint per Future

 * Remote
   – Support for starting up Akka on a randomly chosen port
   – Lots of optimizations

 * Akka STM
   – Now uses ScalaSTM instead of Multiverse directly

 * IOActor
   – Many improvements for 2.0

 * Routers
   – Custom Routers (create your own!)
   – Remote Routers, any Router can now be remote
   – Resizers, replaces the old Actor Pool API, add Resizer to Router to get Actor Pool functionality
   – Resizers, configure them in config file
   – Resizers, also usable from Java, so now there's a Java API for "Actor Pools"

 * ømq
   – This module is now ported from Akka 1.3 for Scala

 * Akka FSM
   – There is now documentation on how to use Akka FSM from Java!

 * Migration
   – We now have a draft of a migration package that will help you from 1.x to 2.0, try it out and give us feedback


And much, much more!


Highlights of Akka 2.0 Milestone 2:


* 70 closed tickets since M1

* More documentation, 254 pages vs 216 for M1
  – Serialization API
  – EventBus API
  – Agents
  – Dead Letters
  – General docs improvements

* More samples (Remoting etc)

* Remoting
  – Remote Death Watch
  – Improved logging
  – Improved performance
  – More configuration options

* Routers
  – Load from config
  – BroadcastRouter

* Decoupled Futures from Dispatchers, use any old ExecutorService or Executor

* Akka now uses Scala STM

* Improved Java APIs

* Many minor improvements, bugfixes and tweaks



Highlights of Akka 2.0 Milestone 1:


* Asynchronous by design — most actor related operations are now asynchronous

* Removing all global state — introducing ActorSystem

* Mandatory Parental Supervision — fault-tolerant default and automatic

* Remote Supervision — children spawned on other nodes are supervised

* Actor Tree Hierarchy — file-system like addressing, with wildcards etc.

* Props — Actor configuration is immutable, sharable and reusable

* Futures & Promises — simpler and more powerful, blocking API refactored out

* Actor Routing — completely revamped, load balancing made much simpler

* Death Watch — react to the death of any actor

* Typed Actors — 0 dependency JDK Proxy based implementation

* EventBus API — publish-subscribe to anything you want

* Extensions — add new functionality to Akka

* Pluggable remote transport layer — Netty/TCP built–in

* General API unification and simplification — less to remember

* Simpler actor life-cycle semantics and management

* Slimmer footprint — around 2.7 million Actors per GB of memory

* Lots of performance and scalability improvements





Akka is released under the Apache V2 license.

Akka website: http://akka.io

Akka Maven repository: http://akka.io/releases

Akka binary distribution: http://akka.io/downloads

Akka 2.0-RC2 documentation: http://akka.io/docs/akka/2.0-RC2/




Happy hAkking!


--
Viktor Klang

Akka Tech Lead
Typesafe - The software stack for applications that scale

Twitter: @viktorklang

√iktor Ҡlang

unread,
Feb 22, 2012, 11:04:09 AM2/22/12
to Akka User List
Any first impressions?

2012/2/21 √iktor Ҡlang <viktor...@gmail.com>

Jonas Bonér

unread,
Feb 22, 2012, 11:40:29 AM2/22/12
to akka...@googlegroups.com

Awesome. As simple as that.

--
Jonas Bonér
CTO

Typesafe - The software stack for applications that scale

Phone: +46 733 777 123
Twitter: @jboner
Blog: letitcrash.com

--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.

chetan conikee

unread,
Feb 22, 2012, 5:18:22 PM2/22/12
to Akka User List
Congrats , Jonas, Viktor , Patrick and all at Akka TypeSafe for a
RC2 ...
Every release is golden with more shine.

You guys are rockstars in our world as Akka is the "spine" of our
infrastructure ;)



On Feb 22, 8:40 am, Jonas Bonér <jo...@jonasboner.com> wrote:
> Awesome. As simple as that.
>
> --
> Jonas Bonér
> CTO
> Typesafe - The software stack for applications that scale
> Phone: +46 733 777 123
> Twitter: @jboner
> Blog: letitcrash.com
>  On Feb 22, 2012 5:04 PM, "√iktor Ҡlang" <viktor.kl...@gmail.com> wrote:
>
>
>
>
>
>
>
> > Any first impressions?
>
> > 2012/2/21 √iktor Ҡlang <viktor.kl...@gmail.com>
> >> Typesafe <http://www.typesafe.com/> - The software stack for
> >> applications that scale
>
> >> Twitter: @viktorklang
>
> > --
> > Viktor Klang
>
> > Akka Tech Lead
> > Typesafe <http://www.typesafe.com/> - The software stack for applications
> > that scale
>
> > Twitter: @viktorklang
>
> >  --
> > You received this message because you are subscribed to the Google Groups
> > "Akka User List" group.
> > To post to this group, send email to akka...@googlegroups.com.
> > To
>
> ...
>
> read more »

Jonas Bonér

unread,
Feb 22, 2012, 5:21:00 PM2/22/12
to akka...@googlegroups.com

Thank you very much. Really glad to hear that.

--
Jonas Bonér
CTO
Typesafe - The software stack for applications that scale
Phone: +46 733 777 123
Twitter: @jboner
Blog: letitcrash.com

√iktor Ҡlang

unread,
Feb 22, 2012, 5:29:33 PM2/22/12
to akka...@googlegroups.com
On Wed, Feb 22, 2012 at 11:18 PM, chetan conikee <con...@gmail.com> wrote:
Congrats , Jonas, Viktor , Patrick and all at Akka TypeSafe for a
RC2 ...
Every release is golden with more shine.

You guys are rockstars in our world as Akka is the "spine" of our
infrastructure ;)


Thanks for the kind words!

Cheers,
 
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.




--
Viktor Klang

Akka Tech Lead
Typesafe - The software stack for applications that scale

Twitter: @viktorklang

Sean W

unread,
Feb 24, 2012, 10:12:54 AM2/24/12
to Akka User List
We have been running solid for the last few version, thanks.

On Feb 22, 11:04 am, √iktor Ҡlang <viktor.kl...@gmail.com> wrote:
> Any first impressions?
>
> 2012/2/21 √iktor Ҡlang <viktor.kl...@gmail.com>
> > Typesafe <http://www.typesafe.com/> - The software stack for applications
> > that scale
>
> > Twitter: @viktorklang
>
> --
> Viktor Klang
>
> Akka Tech Lead
> Typesafe <http://www.typesafe.com/> - The software stack for applications
> that scale
>
> Twitter: @viktorklang

√iktor Ҡlang

unread,
Feb 24, 2012, 11:47:53 AM2/24/12
to akka...@googlegroups.com

Music to my ears!

Jonas Bonér

unread,
Feb 24, 2012, 12:14:34 PM2/24/12
to akka...@googlegroups.com

Great news. Thanks.

--
Jonas Bonér
CTO
Typesafe - The software stack for applications that scale

Phone: +46 733 777 123
Twitter: @jboner
Blog: letitcrash.com

On Feb 24, 2012 4:13 PM, "Sean W" <swa...@viridityenergy.com> wrote:
Reply all
Reply to author
Forward
0 new messages