A monolithic application
The purpose of this chapter is to introduce and lead the reader to transform what is commonly called monolithicapplication into a dynamic and scalable application.
What is a monolithic application?
When people talk about scaling, they often use the term monolithic application. But what is this, exactly? Usually, this refers to a software or an infrastructure where everything(including the presentationpart, backend, and data part) is combined in a single block, called a monolith. In our case, we are focusing on the infrastructure. To explain the concept of a monolithic application, we are going to build an example application with the following components as shown in the figure below:
- A MySQL database where there is only one table with a single numeric field
- A backend frontend Java/Tomcat listening on the default
8080
port component that reads the database, shows the value, and increments the numeric value - An Apache 2.2 web server listening on default port
80
that communicates...