Engineering, News

AppDynamics Supports Scala and the Typesafe Reactive Platform with Play2/Akka

By | | 3 min read

Tag ,

AppDynamics now supports the Typesafe Reactive Platform. Check out the video detailing the integration

In the AppDynamics Spring 2014 release we added support for the Scala language and the TypeSafe Reactive Platform with support for Play2 and Akka based applications. We are excited to announce a strategic partnership with TypeSafe to provide the best APM solution in the market for Reactive applications.

“Our new partnership with AppDynamics provides end to end visibility into production applications running on the Typesafe Reactive Platform. With AppDynamics’ unique support of Scala, Akka and Play, developers will be able to build reactive applications in record time, troubleshoot issues in real-time, and most importantly be certain that every user has a great experience with their application,” said Dave Martin, Vice president of Worldwide Sales and Business Development, Typesafe

Reactive Applications

Reactive applications are a new class of applications that are becoming more and more prevalent in both Consumer and Enterprise-facing environments. Reactive applications are fundamentally different to the traditional web-based or mobile applications seen today and are distinguished by having one or more of the following defining traits:

  • Event-Driven: Enables parallel, asynchronous processing of messages or events with ease.
  • Scalable: Can scale within and across nodes elastically to provide compute power on-demand when it’s needed.
  • Resilient: The ability to recover and repair itself automatically in order to provide seamless business continuity.
  • Responsive: Rich, engaging, single page user interfaces that provide instant feedback based on user interactions and other stimuli.

Typesafe Reactive Platform

The Typesafe Reactive Platform is a JVM-based runtime and toolset for building Reactive applications. The Typesafe Reactive Platform is a suite of integrated products consisting of Play Framework, Akka, and Scala.

Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way.  It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive.

Akka is a runtime for building highly concurrent, distributed, and fault tolerant event-driven applications.

Play Framework is an MVC based web framework that focuses on developer productivity, modern web and mobile applications, and predictable, minimal resource consumption resulting in highly performant, highly scalable applications.

Slick is a modern database query and access library for Scala, where you can write your database queries in Scala instead of SQL, thus profiting from the static checking, compile-time safety and compositionality of Scala.

Spray is a toolkit for building REST/HTTP-based integration layers on top of Scala and Akka.  Being asynchronous, actor-based, fast, lightweight and modular it’s a great way to connect Scala applications to the outside world.


Bootstrapping with TypeSafe Activator

Typesafe Activator gets you started with the Typesafe Reactive Platform, Play Framework, Akka and Scala. A unique, browser-based tool that helps developers get started with Typesafe technologies quickly and easily. Activator is a hub for developers wanting to build Reactive applications. Unlike previous developer-focused offerings that are delivered simply via a website, Activator breaks new ground by delivering a rich application directly to the desktop. Activator updates in real-time with new content from Typesafe and value-add third parties, helping developers engage and adopt Typesafe technologies in an entirely frictionless manner.

The rich developer content in Typesafe Activator is dynamic and customizable. New templates are published regularly on the Typesafe website.

To get started we will use the Reactive Stocks Activator Template:

Adding the AppDynamics Agent

Java Agent


To enable the AppDynamics agent simply download and configure the AppDynamics Java Agent and update your ‘framework/build’ environment with the -javaagent switch:

JAVA_OPTS="$JAVA_OPTS -javaagent:/opt/appdynamics/java-agent/javaagent.jar"

Monitoring the TypeSafe Reactive Platform with the AppDynamics

AppDynamics provides application performance management for Java and Scala applications. Get end to end visibility from the end user to the server side.

Jamie Allen, Director of Consulting at Typesafe talks about the mutual benefits of Typesafe partnering with AppDynamics:


Take five minutes to get complete visibility into the performance of your production applications with AppDynamics today.

Dustin Whittle

Dustin Whittle is a Developer Evangelist at AppDynamics where he focuses on helping organizations manage application performance. Find out more at