Typesafe Stack 2.0: Scala, Akka, Play

| by Bienvenido David Follow 1 Followers on Mar 15, 2012. Estimated reading time: 3 minutes |

Typesafe has released Typesafe Stack 2.0, an open source platform for building scalable applications in Java and Scala. The Typesafe Stack includes the Scala programming language, the Akka 2.0 event-driven middleware, the Play 2.0 web framework, and various development tools, that integrate seamlessly with existing Java environments.

Akka 2.0

Akka is an open source, event-driven middleware framework for building high performance, reliable, and distributed applications in Java and Scala. Akka decouples business logic from low-level mechanisms such as threads, locks and non-blocking IO. Scala or Java code lives in Actor objects which send and receive messages, while Akka handles synchronization, load-balancing, fault tolerance, and elasticity. Akka 2.0 features improved scalability (up to 2.7 million actors per GB of memory) and simplified creation of distributed applications in the cloud or in a virtualized datacenter environment. Other new features include: 1) location transparency, where actors may reside locally or remotely without any code changes, 2) configuration-based deployment, where topologies are specified at runtime, 3) supervision and monitoring, where every Akka component is monitored for failures or termination, and 4) event bus, to easily send messages (publish/subscribe) to groups of actors. Akka 2.0 is also using the upcoming Scala 2.10 standard library Future implementation that gives developers "scala.concurrent.future".

Read Introducing Akka 2.0 for more information.

Play 2.0

Play is a web framework based on a lightweight, stateless architecture, with native support for both Java and Scala applications. It adopts the "convention over configuration" philosophy and has a fast edit-test development cycle. Play 2.0 is now primarily written in Scala, compared to the Java implementation of the original Play Framework. It uses a Scala-based template engine as the default instead of Groovy. It also uses a more standardized approach to build and deployment using sbt, the popular build tool for Scala. Play 2.0 is using Akka for its event-handling and asynchronous processing, making Play web applications more scalable and fault-tolerant. It also features a more modular architecture, so you can easily add or remove plugins, or even use it as a library instead of a web framework. Play 2.0 uses an Iteratee IO implementation to provide out-of-the-box support for many advanced push-based/streaming technologies, from WebSockets and Comet to file streaming. Routes (URL mappings), templates, and assets are now compiled to detect errors early in the development process. Other new features include the Anorm SQL API, form validation, integrated JSON and XML handling and an HTTP client API for accessing web services.

Read Introducing Play 2.0 for more information.

Typesafe Console

The Typesafe Subscription provides commercial support and management tools for the open source Typesafe Stack. The Typesafe Subscription covers Scala, Akka, and Play, and also adds the Typesafe Console for tracing and monitoring applications built on the Typesafe Stack. The Typesafe Console provides insight into usage trends and performance characteristics of event-driven Akka based systems. It captures application events, links those events into trace flows across actors and remote nodes, and makes this information actionable using a browser or REST and JMX APIs. A Typesafe Console demo is available.

The Typesafe Stack also includes a set of developer tools. The Scala IDE for Eclipse provides a development environment with syntax highlighting, code completion, and integrated debugging. Simple Build Tool (sbt) automates compilation and dependency management. The Typesafe Stack also works with third party Java tools like debuggers and profilers.

The Typesafe Stack is available for Mac OS X, Linux, and Windows and requires JRE 1.6+. Akka 2.0 and Play 2.0 are both released under the Apache 2 License. To get started, visit the Typesafe Stack Getting Started page, which walks you through installation and the creation of sample (template) projects. For more information, visit the official Typesafe Stack page and download the Typesafe Stack 2.0 Whitepaper. You might also want to read InfoQ's interview of Martin Odersky on Typesafe Stack 2.0 and Scala.


Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

You got to love the console by Vikas Hazrati

Very cool. We have been using Akka for the last few projects and the results have been amazing barring a few hiccups like the integration with ZMQ and somewhat slow remote actors. Would love to try that on Akka 2

Vikas / Knoldus

Typesafe Stack 2.0 raises the bar in quality standards by Fernando Racca

With great frameworks and excellent design, this is the new benchmark for applications to be measured against.

Can't wait for #scaladays2012 -

Great! by yang rason

It's so great!
We are try to use typesafe stack to our cloud call center

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

3 Discuss