Architecture of a Play application
To perceive in a better way how a Play application is built, we first need to understand a few of its architectural aspects.
Visualizing the framework stack
Before we start exploring the code behind a typical sample Play application, let's visualize the architecture of the framework using a couple of diagrams. First, the overall diagram of the technology stack composed of Play is shown as follows:
On top of the JVM resides the Akka Framework, a framework to manage concurrent operations based on the actor model, which we will cover later in Chapter 8, Essential Properties of Modern Applications – Asynchrony and Concurrency. While most web frameworks today still rely on servlet containers such as Tomcat or JBoss, the novelty of Play is to avoid following this model by focusing on making applications stateless when code can be hot swapped, that is, replaced at runtime. Although widely used and deployed in commercial environments, servlet containers suffer from...