Geographically Distributed Scalable Web Application Architecture
Hynninen, Atte (2011)
Hynninen, Atte
2011
Tietotekniikan koulutusohjelma
Tieto- ja sähkötekniikan tiedekunta - Faculty of Computing and Electrical Engineering
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2011-10-05
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tty-2011102414854
https://urn.fi/URN:NBN:fi:tty-2011102414854
Tiivistelmä
A geographically scalable Web application architecture is designed in this master’s thesis. The architecture is designed for a Web-based language learning service called WordDive. WordDive has a global user base with users in over 60 countries. WordDive’s current Web server is located in Finland and it is unable to serve the content to the users around the world with equal response times. A new solution is sought by designing a geographically distributed scalable architecture that can grow flexibly as the amount of users increases. This is done to ensure the cost efficiency of the growing process.
Web application architectures consist of solutions that create the network and the software architecture for the system. Hardware architecture for a Web application can consist from a single computer or from a network of many computers. The architecture can be scaled up by adding more computers to the company’s own data centre or the company can decide to use a service that does the scaling for them. The underlying technology behind scalable architectures is usually distributed computing, which means that the load is divided between several different computers. The division can be done in different ways. Cloud computing provides one solution model that can be used to implement this.
WordDive is currently running on a single physical server. The main requirement for the new architecture is to keep the response times low for all of the users. Most of the traffic while using WordDive is caused by the multimedia content and the code libraries that are transmitted to the user’s computer. Due to this, it is possible to scale the architecture by adding a content delivery network, which will serve most of the content. The content is served from geographically distributed locations, which will decrease the response times on users who are far away from Finland. This also allows WordDive’s current server to focus on backend activities. The architecture can be further scaled up via the means of distributed computing or by moving the entire architecture to a cloud-based environment.
The tests were done by adding a content delivery network to WordDive’s test environment. Six different locations were used to do global testing. There was some deviation in the test results, but overall the test results showed clear improvement in global response times. /Kir11
Web application architectures consist of solutions that create the network and the software architecture for the system. Hardware architecture for a Web application can consist from a single computer or from a network of many computers. The architecture can be scaled up by adding more computers to the company’s own data centre or the company can decide to use a service that does the scaling for them. The underlying technology behind scalable architectures is usually distributed computing, which means that the load is divided between several different computers. The division can be done in different ways. Cloud computing provides one solution model that can be used to implement this.
WordDive is currently running on a single physical server. The main requirement for the new architecture is to keep the response times low for all of the users. Most of the traffic while using WordDive is caused by the multimedia content and the code libraries that are transmitted to the user’s computer. Due to this, it is possible to scale the architecture by adding a content delivery network, which will serve most of the content. The content is served from geographically distributed locations, which will decrease the response times on users who are far away from Finland. This also allows WordDive’s current server to focus on backend activities. The architecture can be further scaled up via the means of distributed computing or by moving the entire architecture to a cloud-based environment.
The tests were done by adding a content delivery network to WordDive’s test environment. Six different locations were used to do global testing. There was some deviation in the test results, but overall the test results showed clear improvement in global response times. /Kir11