With the expansion of technology and increasing access to existing applications on the Internet, it has become a challenge to keep them available at all times. This work aims to demonstrate in theory and practice the use of resources to scale a web application and achieve high availability. These resources can be applied directly to the application, for example using Ajax, or they can also be applied to the architecture of the servers that will make the application available, using the concepts of vertical scalability, clusterisation and horizontal scalability. It also demonstrates techniques for increasing web application performance.