Web application are future programming . They execute the core business logic that handles a user’s request and sends back HTML to the user’s browser. To do their job, they typically communicate with a variety of backend infrastructures such as databases, caching layers, job queues, search services, other microservices, data/logging queues, and more. As mentioned above, you typically have at least two, and often times many more, plugged into a load balancer in order to process user requests.
You should know that app server implementations require choosing a specific language (PHP, Java, Node.js, Ruby, Scala, C# .NET, etc.) and a web MVC framework for that language (Laravel for PHP, Express for Node.js, Play for Scala, Ruby on Rails, etc.).